php json 请求失败,json从js到php - 无法打开流:http请求失败

我正在尝试将一些json数据从js发送到php,并通过REST将其传递给mongo。

以下输出json字符串(如果我只是将它作为字符串放在PHP文件中,以后工作正常,请参阅下面的代码段。)

JS发送json:

var s = JSON.stringify(send); //s contains previous data in arrays, etc

ic(s);

function ic(s){

var ajaxUrl = './iM.php';

$.getJSON(ajaxUrl,

{da: s},

function(data) {

console.log (data);

});

}

在iM.php中:

$s = $_GET["da"]; //

//$s = '{"r":"pax","c":1,"w":["kiwi","melon"],"g":["cat","dog"]}'; //

$opts = array(

"http" => array(

"method" => "POST",

"header" => "Content-type: application/json",

"content" => $s,

),

);

$context = stream_context_create($opts);

$result = file_get_contents("https://api.mongolab.com/api/1/databases/$db/collections/$collection?apiKey=$key", false, $context);

var_dump($result); // Dumps the response document

在firefox调试器中,我可以看到文件实际被调用,但是没有添加数据。

创建了error_log文件:

无法打开流:HTTP请求失败! HTTP / 1.1 400错误请求

我也在php中试过urlencode($ s),仍然无法正常工作。

$ db,$ collection和$ key在php中是不确定的,没问题。

我错过了什么?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值