zoukankan      html  css  js  c++  java
  • 如何POST一个JSON格式的数据给Restful服务

    在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实现:

     1 $data = array("name" => "Hagrid", "age" => "36"); 
     2 $data_string = json_encode($data); 
     3 $ch = curl_init('http://api.local/rest/users'); 
     4 curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"); 
     5 curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
     6 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
     7 curl_setopt($ch, CURLOPT_HTTPHEADER, array( 
     8 'Content-Type: application/json',
     9 'Content-Length: ' . strlen($data_string)) 
    10 ); 
    11 $result = curl_exec($ch);
  • 相关阅读:
    IO模型
    协程
    线程
    进程总结
    HashMap和Hashtable有什么区别
    HashMap 1.7 与 1.8 的 区别,说明 1.8 做了哪些优化,如何优化的
    GC线程是否为守护线程?
    float f=3.4;是否正确?
    final、finally和finalized的区别?
    Eureka注册中心是什么?
  • 原文地址:https://www.cnblogs.com/xiaomifeng/p/4797881.html
Copyright © 2011-2022 走看看