Javascript Ajax代码在移动设备上不起作用
这段代码在桌面浏览器和移动应用程序上都能很好地工作Javascript Ajax代码在移动设备上不起作用,javascript,jquery,ajax,api,mobile,Javascript,Jquery,Ajax,Api,Mobile,这段代码在桌面浏览器和移动应用程序上都能很好地工作 function submitSN() { var data = []; var eles1 = document.getElementsByClassName('chip'); for (var i = 0 ; i < eles1.length ; i++) { data.push(eles1[i].innerText.substring(0,eles1[i].innerText.le
function submitSN()
{
var data = [];
var eles1 = document.getElementsByClassName('chip');
for (var i = 0 ; i < eles1.length ; i++)
{
data.push(eles1[i].innerText.substring(0,eles1[i].innerText.length-5));
}
profile.skills = data;
profile.uid = uid;
$.ajax({
url: '/postprof',
type:'POST',
data: profile,
dataType: 'json',
headers: new Headers({ "Content-Type": "application/json" })});
$("body").html("<h1 style='text-align:center;padding:4%;'>Done, Return to your messenger now!</h1>");
}
此代码适用于普通桌面浏览器,但不适用于我的移动浏览器,如何解决此问题???失败的代码可能是:
headers: new Headers({ "Content-Type": "application/json" })});
您可能正在iPhone/iOS/Webkit上测试,它没有头
构造函数
您可以阅读更多信息Headers API仅在某些浏览器中可用 看看这张桌子 请尝试以下方法:
contentType:“应用程序/json”,
您不需要定义任何头,jQueryAjax的默认设置是无论如何处理json 这里是一个非常基本的
POST
请求,使用jQuery ajax发送一个简单的对象,您不需要定义标题
、数据类型
或内容类型
let custom_object = {
name: 'Ahmed',
age: 22
}
$.ajax({
type: 'POST',
url: 'YOUR_URL',
data: custom_object,
success: function(){
cosnole.log('Done: ', e)
},
error: function(e){
console.log('ERROR! ', e);
}
});
让自定义对象={
姓名:“艾哈迈德”,
年龄:22
}
$.ajax({
键入:“POST”,
url:“你的url”,
数据:自定义对象,
成功:函数(){
cosnole.log('Done:',e)
},
错误:函数(e){
console.log('ERROR!',e);
}
});
默认值为:
:标题
{}
:数据类型
智能猜测(xml、json、脚本或html)
:contentType
application/x-www-form-urlencoded;字符集=UTF-8
来源:你有url吗?看看这个网站,也许它会帮助你解决你的电话问题?您需要在服务器页面上具有COORS访问权限,因为该应用程序不在您的域中。@PHPglue,不是这个问题,因为它在桌面浏览器上正常工作。您是否尝试了BrowserStack或iPhone调试器?我在普通Safari浏览器上进行了测试,以下是检查它的URL跳过广告,抱歉:在提交表单时,我收到了404(). 问题出在服务器上,而不是客户端。我可能错了。我认为苹果保护他们的用户不受任何HTTP请求的影响,这样就无法创建XMLHttpRequest对象,而且现在也无法在safari上实现这一点——参考:
$.ajax({
url: '/postprof',
type:'POST',
data: profile,
dataType: 'json',
contentType: "application/json",
});
let custom_object = {
name: 'Ahmed',
age: 22
}
$.ajax({
type: 'POST',
url: 'YOUR_URL',
data: custom_object,
success: function(){
cosnole.log('Done: ', e)
},
error: function(e){
console.log('ERROR! ', e);
}
});