我正在使用ASP Core Web API,并且我想了解发送a的含义 没有在jQuery ajax请求上序列化的JavaScript对象?
例如:
var data = {firstName: '123', lasName: '' }
$.ajax({
type: "POST",
url: url,
data: data,
success: callback
});
我希望何时发送? javascript对象
方法类型反映出来吗? (POST / GET)
我已经在网上搜索了,据我了解,我们通过GET方法发送Javascript对象,因为jQuery ajax会将其转换为键对值。是唯一原因吗?
答案 0 :(得分:1)
jQuery为您序列化它。默认情况下,它将作为x-www-form-urlencoded
发送。
答案 1 :(得分:0)
如另一个答案中所述,jQuery
将自动将对象转换为URL编码的参数字符串。
执行此操作的主要好处之一是它将正确编码值。许多字符需要特殊的编码,并且如果您只是连接变量,例如:
var data = "firstname=" + firstname + "&lastname=" + lastname;
如果名称包含任何这些字符,则可能会出现问题。编写此代码的正确方法是:
var data = "firstname=" + encodeURIComponent(firstname( + "&lastname=" + encodeURIComponent(lastname);
使用对象使您不必担心这一点,jQuery可以确保它正确完成。