javascript - 为什么带有 json 内容类型的 ajax post 发送数据 url 编码?

标签 javascript jquery ajax

为什么这个调用会像这样显示编码到 URL 上的值?

http://localhost:49597/api/auth?user=jon&password=123

我正在使用以下 ajax 调用...

$.ajax({ url: "api/auth",
 type: "get", 
 data: { user: "jon", password: "123" },
 dataType: "json", 
 contentType: "application/json; charset=utf-8" 
});

我希望数据以json格式发送...

最佳答案

因为这是一个GET请求。

GET 将在查询字符串中发送数据。如果您想避免这种情况,您可以将类型更改为 POST POST 将在请求正文中发送数据。

$.ajax({ url: "api/auth",
 type: "post", 
  //other stuff
});

如果它是一个登录表单,您可能应该使用 POST 方法。

关于javascript - 为什么带有 json 内容类型的 ajax post 发送数据 url 编码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13885176/

相关文章:

php - 我想以 XXX-XXX-XXXX 格式显示电话号码。我尝试了很多方法但无法得到正确答案

mysql - Laravel 的 View 的 ajax 命名路由

jquery - jQuery 中的数字格式(输入掩码)

javascript - 无法获取未定义或空引用的属性

javascript - 我需要创建一个 Javascript 函数来创建自定义推送功能

php - 在 ajax 加载页面后执行 javascript 脚本 - 不起作用

javascript - 如何在没有滚动条的情况下滚动 Div?

java - Liferay Portlet 间通信

javascript - 在文档中放置 JavaScript/Ajax 的最佳位置在哪里?

javascript - 替换字符串中的 onclick