2014-03-27 94 views
0

我想知道是否有可能通過發佈使用常規字符串和數據從文件捲曲後的數據項:從文件

我試圖JSON數據做通過命令行的捲曲值對,

curl -X POST -H "Content-Type: application/json" -H "Accept: applicaton/json" -d '{"port":"10001", "nodeID": "testnode", "ca": '"`cat cert.pem`"'}' http://localhost:1215/net/tunnel 

但是一個錯誤,指出

SyntaxError: Unexpected number 

是該方法不正確或我有一個bug?

更新:

[email protected]:/home/user/work/derivation/keys# curl -X POST -H "Content-Type: application/json" -H "Accept: applicaton/json" -d "{\"port\":\"10001\", \"nodeID\": \"testnode\", \"ca\": \"<tilde>cat cert.pem<tilde>\"}" http://localhost:1215/net/tunnel 
SyntaxError: Unexpected token 

at Object.parse (native) 
at IncomingMessage.<anonymous> (/home/user/work/boomerang/node_modules/express/node_modules/connect/lib/middleware/json.js:76:27) 
at IncomingMessage.EventEmitter.emit (events.js:92:17) 
at _stream_readable.js:920:16 
at process._tickDomainCallback (node.js:459:13)[email protected]:/home/user/work/derivation/keys# 

謝謝!

回答

1

是的,你可以使用-d @filename.txt

curl -X POST -H "Content-Type: application/json" -H "Accept: applicaton/json" -d @filename.txt http://localhost:1215/net/tunnel 

但是當前的命令也應該工作。試試這個:

curl -X POST -H "Content-Type: application/json" -H "Accept: applicaton/json" -d "{\"port\":\"10001\", \"nodeID\": \"testnode\", \"ca\": \"'cat cert.pem'\"}" http://localhost:1215/net/tunnel 
+0

不好:/,得到類似的錯誤,因爲我的文章。 –

+0

@ waka-waka-waka確保你的json格式正確並且有效。 –

+0

'cat cert.pem' - >以字符串形式obv,因此我將其更改爲 cat cert.pem #SyntaxError:意外的標記 –