欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

jQuery向webApi提交post json數據

 更新時間:2017年01月16日 11:41:12   投稿:mrr  
這篇文章主要介紹了jQuery向webApi提交post json數據的方法,非常不錯,需要的的朋友參考下

在頁面想webApi post json數據的時候,發(fā)現webapi不能直接以json的方式接受數據(注:我是沒有發(fā)現一個很好的方式來post json數據的);但是可以以數據結構的方式傳遞;

如下:

//js代碼 
          var d = {
          Id: "1",
          Name: "name",
          Value: "OldValue", 7         };
        $.ajax({
          type: "post",
          url: url1,
          data: JSON.stringify({
            pConfig: d
          }),
          success:function(d){
          }
        });
public class Diff
  {
    public string Id { set; get; }
    public string Name { set; get; }
    public string Value { set; get; }
  }
 public Diff post([FromBody]Diff pConfig)
    {
      List<DiffConfig> s = pConfig;
      return s;
    }

像這樣的代碼是沒有問題的;得到的是一個標準結構的數據;

但是如果改為下面的代碼,就會發(fā)現沒有數據

//js代碼 
         var d = [{
           Id: "1",
           Name: "name",
           Value: "Value",
         },{
           Id: "2",
           Name: "name2",
           Value: "Value2",
         }];
         $.ajax({
          type: "post",
          url: url1,
           data: JSON.stringify({
             pConfig: d
          }),
           success:function(d){
         }
        });
public List<Diff> post([FromBody]List<Diff> diff)
     {
       List<Diff> d = diff;
       return d;
     }

這樣的代碼會發(fā)現,數據沒有傳過來,后面才發(fā)現,原來jq的ajax傳輸數據類型有問題;傳輸的數據類型contentType的默認值為 "application/x-www-form-urlencoded"。默認值適合大多數情況。但是卻不能適應這次傳輸的值,把   contentType: 'application/json' 設置一下,就可以ok了;數據傳輸完全沒有問題;

$.ajax({
      type: "post",
      dataType: 'json',
      url: url,
      contentType: 'application/json',
      data: JSON.stringify(d),
      success: function (d) {
       
      }
    });

以上所述是小編給大家介紹的jQuery向webApi提交post json數據,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

相關文章

最新評論