您的位置:首页 > Web前端 > JavaScript

如何POST一个JSON格式的数据给Restful服务

2012-12-10 23:04 543 查看
在Android/java平台上实现POST一个json数据:
JSONObject jsonObj = new JSONObject();
jsonObj.put("username", username);
jsonObj.put("apikey", apikey);
// Create the POST object and add the parameters
HttpPost httpPost = new HttpPost(url);
StringEntity entity = new StringEntity(jsonObj.toString(), HTTP.UTF_8);
entity.setContentType("application/json");
httpPost.setEntity(entity);
HttpClient client = new DefaultHttpClient();
HttpResponse response = client.execute(httpPost);


用curl可执行如下命令:
curl -l -H "Content-type: application/json" -X POST -d '{"phone":"13521389587","password":"test"}' http://domain/apis/users.json
用jQuery:

$.ajax({
  url:url,
  type:"POST",
  data:data,
  contentType:"application/json; charset=utf-8",
  dataType:"json",
  success: function(){
    ...
  }
})

PHP用cUrl实现:

$data = array("name" => "Hagrid", "age" => "36");                                                                    
$data_string = json_encode($data);     
$ch = curl_init('http://api.local/rest/users');      
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");                          
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(                 
    'Content-Type: application/json',
    'Content-Length: ' . strlen($data_string))         
);                                                                                                                   
$result = curl_exec($ch);


by iefreer
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: