1. 程式人生 > >webapi的post和get請求總結

webapi的post和get請求總結

1、get請求,傳輸基礎型別資料

[HttpGet]
public string GetTestData(int id,string name)
{
    return id+name;
}
$.ajax({
        type:"get",
        url:"http://xxxx/api/Test/GetTestData",
        data: { id: 1, name:"lili"},
        success:function(data, status) { }
}); 

2、get請求,傳遞實體資料

public class TestModel
{
    public
string ID {get;set; } public string Name {get;set; } } [HttpGet] public string GetTestDataByModel([FromUri]TestModel testModel) { return testModel.ID+testModel.Name; } $.ajax({ type:"get", url:"http://xxx/api/Test/GetTestDataByModel", data: { ID:"1", Name:"lili"}, success:function(data, status) { } });

3、post請求,傳遞基礎型別引數

$.ajax({
        type:"post",
        url:"http://xxx/api/Test/PostTestData",
        data: {"":"lili"},
        success:function(data, status) {}
    });

注意:不能使用 data: {“name”:”lili”}。因為FromBody的機制是=value,沒有key的概念。

[HttpPost]
public bool PostTestData([FromBody]string name)
{
   return
true; }

4、post請求,傳遞實體型別引數

[HttpPost]
public bool PostTestDataModel(TestModel testModel)
{
    return true;
}
public class TestModel
{
    public string ID {get;set; }
    public string Name {get;set; }
}
$.ajax({
       type:"post",
       url:"http://xxx/api/Test/PostTestDataModel",
       data: { ID:"1", Name:"lili"},
       success:function(data, status) {}
   });

或者

var postdata = { ID:"1", Name:"lili"};
$.ajax({
    type:"post",
    url:"http://xxx/api/Test/PostTestDataModel",
    contentType:'application/json',
    data: JSON.stringify(postdata),
    success:function(data, status) {}
});

若是沒定義介面的實體類,可以使用型別dynamic。

5、post,傳遞基礎型別陣列

var arr = ["1","2","3","4"];
$.ajax({
       type:"post",
       url:"http://xxx/api/Test/PostTestDataArray",
       contentType:'application/json',
       data: JSON.stringify(arr),
       success:function(data, status) { }
   });
[HttpPost]
public bool PostTestDataArray(string[] ids)
{
     return true;
}

6、post,傳遞實體集合

var arr = [
       { ID:"1", Name:"l1"},
       { ID:"2", Name:"l2"},
       { ID:"3", Name:"l3"}
   ];
   $.ajax({
       type:"post",
       url:"http://xxx/api/Test/PostTestDataList",
       contentType:'application/json',
       data: JSON.stringify(arr),
       success:function(data, status) {}
   });
[HttpPost]
public bool PostTestDataList(List<TestModel> mList)
{
   return true;
}

補充:許多場景可以通過使用dynamic和json來傳遞和接收物件以達到簡化問題的效果。

相關推薦

webapi的postget請求總結

1、get請求,傳輸基礎型別資料 [HttpGet] public string GetTestData(int id,string name) { return id+name; } $.ajax({ type:"get",

【http】postget請求的區別

方式 無限制 信息 資源 敏感信息 字符 瀏覽器歷史記錄 指定 較差 兩種常用的HTTP請求方式:post和get get:從指定的資源進行請求。數據長度有限制(2048個字符)可被緩存、可被保留在瀏覽器歷史記錄中,安全性較差。發送敏感信息如密碼時不適用。 post

JSP 處理 POSTGET請求

例如 enc utf get post character 頁面 odi .get JSP頁面接受post請求,如果請求的參數值裏包含非西歐字符,首先需要調用 request.setCharacterEncoding("UTF-8"); 如果是GET請求,不能這樣做,可先獲

利用URLConnection來發送POSTGET請求

出現異常 spa 一個 tle span new 發送 緩沖 all URL的openConnection()方法將返回一個URLConnection對象,該對象表示應用程序和 URL 之間的通信鏈接。程序可以通過URLConnection實例向該URL發送請求、讀取URL

python之使用request模塊發送postget請求

jpg 二進制格式 request requests 下載到本地 aca user www pwd import requestsimport json#發送get請求並得到結果# url = ‘http://api.nnzhp.cn/api/user/stu_info?s

C#傳送簡單的postget請求(轉載)

POST傳送請求及接受響應流程  根據目標地址址建立HttpWebRequest物件 設定響應的請求引數------Method、ContentType 等 使用HttpWebRequest物件獲取請求流並且寫入訊息體    使用H

Python使用flask獲取Postget請求

@app.route('/company_qa', methods=['POST', 'GET']) def company_qa_login(): """ 公司問答的請求程式碼 :return: """ starttime = datetime.datetime.now() if re

vue---進行postget請求

參考文件: https://www.jb51.net/article/125717.htm 使用axios <script src="https://unpkg.com/axios/dist/axios.min.js"></script> 基本使用方法:

Android中HTTP PostGet請求

簡單的隨手記,適合初學者使用,現在網路請求比較流行使用OKHttp,後期部落格會寫到如何使用。 在AndroidManifest加入以下許可權 <uses-permission android:name="android.permission.INTERNET" />

Post get 請求亂碼問題處理

原始處理get post 請求亂碼 String newEncoding = new String( params.getBytes("iso-8859-1") , "utf-8" );  原理分析   post 處理亂碼方式 req.setCharac

axios postget請求,及用到的基礎配置

axios({ method: 'post', url, data:param, transformRequest: [function (data) { /**

POSTGET請求區別 POSTGET請求區別

  1. 請求長度的限制         在HTTP協議中,從未規定GET/POST的請求長度限制,對於GET,對url的限制來源於瀏覽器或web伺服器,瀏覽器和伺服器限制了url的長度。因此,在使用GET請求時,傳輸資料會受到URL長度

ajax 中 post 請求 get 請求的區別(二)

get 請求 1、傳遞資料方式: 資料直接在post 的 url 中傳遞,直接拼接在 url ? 後面,多個數據用 & 符號拼接 xhr.open('get ‘, 2.get.php?username = Tom & age = 30&’)

php封裝curl,模擬POSTGET請求HTTPS請求

<?php /** * @title 封裝代理請求 * @author victor **/ class ApiRequest { /** * curl提交資料 * @param String $url 請求的地址 * @param Array $header 自定

PHP專案中使用Guzzle執行POSTGET請求

以往在專案中要用到第三方介面時會用到封裝好的curl執行請求,現在有了更好的解決方案——Guzzle。 下面是官方介紹: Guzzle是一個PHP的HTTP客戶端,用來輕而易舉地傳送請求,並整合到我們的WEB服務上。 介面簡單:構建查詢語句、POST請求、分流

解決postget請求的亂碼問題

亂碼問題 1.解決post中文亂碼問題 2.解決get請求中文引數亂碼 1.解決post中文亂碼問題 新增一個spring提供的過濾器 , 將編碼設定為utf-8 在web.xml中加入以下配置資訊

使用curl命令模擬POSTGET請求

轉載自CSDN本文連結地址: 使用curl 命令模擬POST/GET請求 curl命令是一個利用URL規則在命令列下工作的檔案傳輸工具。它支援檔案的上傳和下載。curl支援包括HTTP、HTTPS、ftp等眾多協議,還支援POST、cookies、認證、從指定偏移處下載部分檔案、使用者代

java寫postget請求

      有時候我們需要在伺服器端傳送一個post或get請求,這是我們就可以通過JDK中的URLConnection類實現 import java.io.BufferedReader; import java.io.IOException; import java.io

Java:使用HttpClient進行POSTGET請求以及檔案上傳下載

1.HttpClient2.本部落格簡單介紹一下POST和GET以及檔案下載的應用。程式碼如下:package net.mobctrl; import java.io.ByteArrayOutputStream; import java.io.File; import ja

PostGet請求的區別?

GET請求,請求的資料會附加在URL之後,以?分割URL和傳輸資料,多個引數用&連線。URL的 編碼格式採用的是ASCII編碼,而不是uniclde,即是說所有的非ASCII字元都要編碼之後再傳輸。 POST請求:POST請求會把請求的資料放置在HTTP 請求包的包體中。上面的item