nodejs http_outgoing与pastebin API崩溃

时间:2015-11-08 16:21:38

标签: node.js pastebin

我写了一个节点应用程序,它旁边有其他很酷的东西,它还提供了一个指向应用程序从txt文件创建的pastebin的链接。

它完全适用于我在OS X上的本地macbook。但是在我的debian服务器上我租用了这个是当有人请求链接到pastebin /请求应用程序创建一个pastebin时显示的内容

编辑:我以前在我的服务器上工作过。现在我只是在一些单独的模块中重新安排了一些代码,比如connection.js,database.js和

我用#pastebin#替换了pastebin模块路径,如果需要我会读取它们。但所有这些都与pastebin-js / node_modules / request / request.js中的内容相关联

这是我用于pastebin的库:https://github.com/j3lte/pastebin-js

_http_outgoing.js:339
        throw new TypeError(
        ^

    TypeError: Header name must be a valid HTTP Token ["Cache-Control:"]
        at ClientRequest.OutgoingMessage.setHeader (_http_outgoing.js:339:11)
        at new ClientRequest (_http_client.js:86:14)
        at Object.exports.request (http.js:31:10)
        at Request.start (#pastebin#)
        at Request.write (#pastebin#)
        at end (#pastebin#)
        at #pastebin#
        at doNTCallback0 (node.js:428:9)
        at process._tickCallback (node.js:357:13)

2 个答案:

答案 0 :(得分:3)

所以我想我发现了我的问题。

我必须升级服务器上的节点,因为出于某种原因,module.exports和多个导出的语法都是未知的。

在5.0升到高之后,似乎我现在降级到v4.2.1并且效果很好。

答案 1 :(得分:1)

我是从一个不相关的Header name must be a valid HTTP Token搜索来到这里的。我的问题是我试图使用它:

res.setHeader("Content-disposition: attachment; filename="+filename);

但是在某个版本的快递之后,你必须这样做:

res.setHeader("Content-disposition", "attachment; filename="+filename);

区别在于第二个使用两个args(name& value),其中第一个只是一个长字符串。