Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 通过指针发送JSON对象_Javascript_Json_Node.js_Sails.js - Fatal编程技术网

Javascript 通过指针发送JSON对象

Javascript 通过指针发送JSON对象,javascript,json,node.js,sails.js,Javascript,Json,Node.js,Sails.js,我正在尝试将JSON对象发送到其他人提供的URL。 以下是服务方提供的文件: MyProgramAPI: 终点: 这是一个REST服务,您需要在其中发布JSON,并提供以下详细信息。 以下是您可以发送到服务的JSON对象示例: 请求Json示例: { "aa": "ertewer", "bb": 1, "cc": 10 } 现在我的代码是: var options = { host : 'http://xxx.yyyy.com/yourCompany-servi

我正在尝试将JSON对象发送到其他人提供的URL。 以下是服务方提供的文件:

MyProgramAPI:

终点: 这是一个REST服务,您需要在其中发布JSON,并提供以下详细信息。 以下是您可以发送到服务的JSON对象示例: 请求Json示例:

{
    "aa": "ertewer",
    "bb": 1,
    "cc": 10
}
现在我的代码是:

var options = {
    host : 'http://xxx.yyyy.com/yourCompany-service/rest/myProgram',
    format : 'json',
    content_type: 'application/json'

} ;
var x = {
               "aa"       : "ABCD",
               "bb"        : 1,
               "cc"     : 10,
       }

needle.request('post', options.host, x, function(err, resp) {
           if (!err) {
               console.log(resp.body) ;
           }

           if (err) {
               console.log('neddle error');
           }
 }
但我总是从服务器收到以下消息:

服务器拒绝了此请求,因为请求实体的格式不受请求资源的支持


您需要说您将向请求方法发送json。见


Tomas的JSON
needle.request示例没有使用
JSON:true
,这一点很模糊;它在
数据
对象内部使用
格式:“json”
。()我使用了格式:“json”和json:true。它们中没有一个起作用。有人有使用Node.js的HTTP模块的解决方案吗?我记得这是可能的,但我目前在互联网上找不到任何软件。@CaseyFalk:这个例子有误导性,实际上是一个get请求,其中format参数仅用作查询参数,如下所示:?format=json user3076730:在这个问题中,您根本没有使用format:json。您所指的只是options.host。如果您手动执行请求(例如使用CURL),服务器是否正确响应?@JohnSterling:“该示例具有误导性”--Right-o,因此“含糊不清”。此外,通过GET请求发送键值对也是发送JSON对象的一种方式。只是为了放大文件的不一致性。在这个问题解决之后,也许它能保证一个拉取请求…@CaseyFalk:是的,你是对的。对不起,我误解了。
needle.request('post', options.host, x, {json:true}, function(err, resp) {
           if (!err) {
               console.log(resp.body) ;
           }

           if (err) {
               console.log('neddle error');
           }
 }