我有一个我正在使用的API,他们希望某个参数为/on/
或/off/
。如果我使用标准jQuery $.ajax
,它会编码为%2Fon%2F
,但在API上失败。由于我无法访问API以进行解码,因此如何防止jQuery对斜杠进行编码?
API使用GET
,这是一个示例调用:
$.ajax({
url: "api.website.com",
data: {id: id, stuff: stuff, device: device},
type: "GET",
dataType: "html"
})
答案 0 :(得分:2)
jQuery会尝试对查询字符串进行编码,因为就是你应该做的。所以那些/
字符将被编码。唯一的解决方法是自己构建一个追加到url
的查询字符串。幸运的是,或者可能不是,您实际上只需要对具有违规字符的参数执行此操作(在您的示例中为stuff
):
$.ajax({
url: "http://api.website.com?stuff=" + stuff,
data: {id: id, device: device},
type: "GET",
dataType: "html"
})