node.js を使用して Cloud9 のサーバーに POST を送信しようとしています。Postmaster を使用すると、問題なく動作します。これを node.js に変換し、http モジュールを追加したので、関連するコードは次のようになります。
var http = require("http");
var options = {
"method": "POST",
"hostname": [
"192.168.153.188"
],
"port": "8080",
"path": [
"index.php"
],
"headers": {
"Content-Type": "text/plain",
"cache-control": "no-cache",
"Postman-Token": "19ed6137-291e-45e7-b4c3-04e62c0c89dc"
}
};
var req = http.request(options, function(res) {
var chunks = [];
res.on("data", function(chunk) {
chunks.push(chunk);
});
res.on("end", function() {
var body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
投稿を送信すると、次のエラーが表示されます。
/var/lang/bin/node[1]: ../src/tcp_wrap.cc:247:static void node::TCPWrap::Connect(const v8::FunctionCallbackInfo<v8::Value>&): Assertion `args[1]->IsString()' failed.
1: node::Abort() [/var/lang/bin/node]
2: node::Assert(char const* const (*) [4]) [/var/lang/bin/node]
3: node::TCPWrap::Connect(v8::FunctionCallbackInfo<v8::Value> const&) [/var/lang/bin/node]
4: v8::internal::FunctionCallbackArguments::Call(void (*)(v8::FunctionCallbackInfo<v8::Value> const&)) [/var/lang/bin/node]
5: 0x55ccab57a28b [/var/lang/bin/node]
6: 0x55ccab57ac27 [/var/lang/bin/node]
ノードを に更新しました。これらは他のソリューションで機能するソリューションであるためv8.15
、試しnpm i natives
てみましたが、それでも同じエラーが発生します。また、http の代わりに request と Unirest を使用してみましたが、両方で何かが起こる前に接続がタイムアウトします。