编写AJAX Post HTTP请求

时间:2017-04-20 15:06:50

标签: javascript jquery asp.net ajax

-->

我目前正致力于将前端连接到API,并且我确定由于格式错误的机构提供的信息而不是API所需的信息而导致以下错误。

jQuery error response in console.

这就是我使用邮递员从API获取数据的方式:

Postman snip

在邮差中,身体很简单:

{
"person" : "Jose Soto",
"connection":"Data Source=(localdb)\\MSSQLLocalDB;Initial Catalog=people;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=True;ApplicationIntent=ReadWrite;MultiSubnetFailover=False"
}

并且回复很好。我确定我错误地将$ .ajax()调用误写了。这是电话:

  $.ajax({
  'type' : 'POST',
  'url' : '/api/getpeople',
  'data' : {
    'person' : user,
    'connection' : app.connection
  },
    'success' : function(data){
      data.name = '${data.fName} ${data.lName}';
      app.userArray.push(data.name);
      app.ppl.push({
        'name' : data.name,

依旧......

2 个答案:

答案 0 :(得分:1)

在Postman中,您明确发送JSON,而默认情况下$.ajax将以form-urlencoded方式发送数据。错误代码和描述也意味着API不会期望您发送的格式的数据。

要更改此设置,请将contentType: 'application/json'添加到$.ajax设置。

答案 1 :(得分:0)

var send = '{"person" : "Jose Soto", "connection":"DataSource(localdb)\\MSSQLLocalDB;InitialCatalog=people;IntegratedSecurity=True;ConnectTimeout=30;Encrypt=False;TrustServerCertificate=True;AppicationIntent=ReadWrite;MultiSubnetFailover=False"}';

$.ajax({
    url: "/api/getpeople",
    type: "POST"
    data: send,
    dataType: "json",
    contentType: "application/json",
    success: function(json){
        //success 
    }
 )};

这更像您的需求,我相信您需要添加contentType

相关问题
最新问题