首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NodeRED http-response节点:如何停止NodeRED向content-type添加字符集?

NodeRED http-response节点:如何停止NodeRED向content-type添加字符集?
EN

Stack Overflow用户
提问于 2019-06-21 22:04:25
回答 2查看 727关注 0票数 0

我需要为NodeRED中的jpeg图像建立一个http代理。我的目标是让浏览器从NodeRED服务器获取仪表板中的所有页面资源。并且该映像只能从另一台服务器上获得。

我尝试了这个抽象的流程:

代码语言:javascript
复制
http-in -> http-request -> function node -> http response

在功能节点中,我设置了头部:

代码语言:javascript
复制
msg.headers = {
    "content-type": "image/jpeg",
    "content-disposition": "inline; filename=\"myimage.jpg\""
}

问题是,浏览器会得到这些头文件(摘录):

代码语言:javascript
复制
content-type: image/jpeg; charset=utf-8
content-disposition: inline; filename="myimage.jpg"

见鬼,charset=utf-8是从哪里来的,如何阻止NodeRED添加这个?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-06-21 22:17:40

您没有提到流中的msg.payload设置为什么。

如果传递给HTTP Response节点的msg.payload是一个字符串,则内容类型会添加charset参数。这不是Node-RED的故意行为,而是底层http/express框架中发生的一些事情。

如果msg.payload是一个缓冲区对象,则不会添加这样的参数。

票数 2
EN

Stack Overflow用户

发布于 2019-09-25 20:18:40

charset=utf-8,由node-red添加,用于定义标准。如果在其上添加charset,则不会有任何问题。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56704992

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档