类型为“的JQuery Ajax调用”;邮政「;作为“收到”;获得;按服务器
我的第一次服务器通信经历有问题,希望得到帮助 在一个教程之后,我为Web服务器(跨域)创建了一个ajax调用。在我尝试将类型从“GET”切换到“POST”之前,一切都进行得很顺利:JQuery仍然发送GET请求(firebug已确认,服务器r_print()同时测试了$\u POST和$\u GET) 所以对我来说最大的问题是:我如何教$.ajax发送帖子?(是的,GET可能会起作用,但此代码不符合我的要求,这会伤害我的感情) 我用一个简单的HTML表单检查了PHP端,该表单发送了一篇带有预期结果的帖子 我还添加了一行:类型为“的JQuery Ajax调用”;邮政「;作为“收到”;获得;按服务器,jquery,ajax,post,types,Jquery,Ajax,Post,Types,我的第一次服务器通信经历有问题,希望得到帮助 在一个教程之后,我为Web服务器(跨域)创建了一个ajax调用。在我尝试将类型从“GET”切换到“POST”之前,一切都进行得很顺利:JQuery仍然发送GET请求(firebug已确认,服务器r_print()同时测试了$\u POST和$\u GET) 所以对我来说最大的问题是:我如何教$.ajax发送帖子?(是的,GET可能会起作用,但此代码不符合我的要求,这会伤害我的感情) 我用一个简单的HTML表单检查了PHP端,该表单发送了一篇带有预期结
jQuery.ajaxSetup({ jsonp: null, jsonpCallback: null});
在一个类似的答案中建议,但没有肯定的结果
服务器代码(PHP)只包含以下内容:
echo("alert('".print_r($_POST)." -- + -- ".print_r($_GET)+"');");
function executeRequest() {
$.ajax({
type: "POST",
url: "http://server/script",
data: ({ username: "test" }),
dataType: "jsonp",
jsonp: "jsonCallback",
contentType: "application/json",
jsonCallback: "jsonCallback",
});
}
function jsonCallback(data) {
alert(data.username);
}
JQuery端:
echo("alert('".print_r($_POST)." -- + -- ".print_r($_GET)+"');");
function executeRequest() {
$.ajax({
type: "POST",
url: "http://server/script",
data: ({ username: "test" }),
dataType: "jsonp",
jsonp: "jsonCallback",
contentType: "application/json",
jsonCallback: "jsonCallback",
});
}
function jsonCallback(data) {
alert(data.username);
}
executeRequest()
每一个关于改进我的搜索模式以及具体问题的帮助或提示都非常受欢迎:)
谢谢 JSONP插入一个脚本标记,该标记执行来自不同域的Javascript,并且只支持GET请求,因为在DOM中插入脚本标记时,POST是不可能的,无论您想使用什么。JSONP通过创建
标记来工作。根本不可能发送JSONP POST。删除“JSONP”和“jsonCallback”行。如果要使用回调,请根据$.ajax文档向$.ajax添加一个.done()函数:
哈哈,答案很简单。谢谢adeneo和Slaks!又学到了一些东西。