在插入文档的MongoLabs文档中,示例中给出了以下jQuery代码: http://docs.mlab.com/data-api/
$.ajax( { url: "https://api.mlab.com/api/1/databases/my-db/collections/my-coll?apiKey=myAPIKey",
data: JSON.stringify( { "x" : 1 } ),
type: "POST",
contentType: "application/json" } );
我必须通过PHP为我的Android应用程序调用RESTFULL API端点..
如何在php中发出POST请求以调用MongoLABs数据APIS?
如何将上面的jquery代码转换为php代码?
我尝试过以下代码,但没有运气。有人可以告诉以下代码中的错误或告诉如何使用PHP吗?
<?php
$x=array(
'x' => 2
);
$data=json_encode($x);
echo $data;
$postdata = $data;
$opts = array('http' =>
array(
'method' => 'POST',
'header' => 'Content-type: application/x-www-form-urlencoded',
'content' => $postdata
)
);
$context = stream_context_create($opts);
$result = file_get_contents('http://api.mlab.com/api/1/databases/mydb/collections/mycoll?apiKey=xxxxxxxxxxxxxxxxxxxxx', false, $context);
echo $result;
?>
答案 0 :(得分:0)
弄错了: 如果有人有相同的问题或想要使用mLabs数据api ..请使用以下内容:
$x=array(
'x' => '2'
);
$data=json_encode($x);
//echo $data;
$opts = array('http' =>
array(
'method' => 'POST',
'header' => 'Content-type: application/json',
'content' => $data
)
);
$context = stream_context_create($opts);
$result = file_get_contents('https://api.mlab.com/api/1/databases/mydb/collections/mycoll?apiKey=xxxxxxxxxxx', false, $context);
echo $result;
但是尽量避免使用DATA apis,因为密钥容易受到攻击,拥有密钥的任何人都可以访问整个数据库..