[英]nodejs http_outgoing crash with pastebin API
我編寫了一個節點應用程序,該節點應用程序在其他很酷的功能旁邊執行,它還提供了指向該應用程序從txt文件創建的粘貼框的鏈接。
它可以在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)
所以我想我發現了我的問題。
我必須升級服務器上的節點,因為由於某種原因,在那里未知帶有module.exports和多次導出的語法。
在5.0過高之后,我現在似乎已降級為v4.2.1,並且效果很好。
我從不相關的Header name must be a valid HTTP Token
到達此處, Header name must be a valid HTTP Token
搜索。 我的問題是我正在嘗試使用此功能:
res.setHeader("Content-disposition: attachment; filename="+filename);
但是在特定版本的express之后,您必須這樣做:
res.setHeader("Content-disposition", "attachment; filename="+filename);
區別在於第二個使用兩個參數(名稱和值),第一個僅是一個長字符串。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.