问题描述
我必须使用 ajax 请求 API,当我将其复制粘贴到浏览器时,其显示结果:
http://c.t.com/t1/index.mpl?formdata={
"FormSubmit":{
"pt": "formsubmit","ptnr": "dsvdsvdsvdsvdsv","key": " dvzvdzvzvzvzvzvz","mode": "test","ADDR":"209.00.00.00","city":"Los Gatos","company":"NetLine Corporation","country": "US","email":"[email protected]","first":"Adam","indcode1": "224","indcode2": "4","last":"Benson","notice": "yes","ocpcode1": "415","ocpcode2": "401","ocpcode3": "3","orgemp": "D050","OfferCode": "w_make126","phone":"4083402200","state":"CA","street":"750 University Avenue","title": "Engineer","OfferVersion": "2000","zip":"95032"
}
}
$(document).ready(function(){
// click on button submit
$("#submit").on('click',function(){
obj ={
"FormSubmit":{
"pt":$('input:hidden[name=pt]').val(),"ptnr":$('input:hidden[name=ptnr]').val(),"key":$('input:hidden[name=key]').val(),"mode":$('input:hidden[name=mode]').val(),"ADDR":$('input:hidden[name=ADDR]').val(),"city":$('input:text[name=city]').val(),"company":$('input:text[name=company]').val(),"country":$('input:text[name=country]').val(),"dept_div":$('input:text[name=dept_div]').val(),"email":$('input:text[name=email]').val(),"indcode1":$('input:text[name=indcode1]').val(),"indcode2":$('input:text[name=indcode2]').val(),"last":$('input:text[name=last]').val(),"notice":$('input:text[name=notice]').val(),"ocpcode1":$('input:text[name=ocpcode1]').val(),"ocpcode2":$('input:text[name=ocpcode2]').val(),"ocpcode3":$('input:text[name=ocpcode3]').val(),"orgemp":$('input:text[name=orgemp]').val(),"OfferCode":$('input:text[name=OfferCode]').val(),"phone":$('input:text[name=ocpcode1]').val(),"state":$('input:text[name=ocpcode1]').val(),"street":$('input:text[name=street]').val(),"title":$('input:text[name=title]').val(),"OfferVersion":$('input:text[name=OfferVersion]').val(),"zip":$('input:text[name=zip]').val(),}}
// obj="{FormSubmit:{"+$("#form").serialize()+"}}"
console.log(obj)
console.log(typeof(obj))
console.log(typeof($('input:text[name=street]').val()))
$.get("https://c.t.com/t1/index.mpl?formdata="+JSON.stringify(obj),function(data,status){
alert("Data: " + data + "\nStatus: " + status);
});
});
});
我认为错误是因为我以错误的方式获取。帮我解决这个问题。
我尝试了一切来解决问题。
解决方法
出现错误的原因 - CORS 问题。您可以查看这篇文章以了解其发生的原因https://medium.com/@dtkatz/3-ways-to-fix-the-cors-error-and-how-access-control-allow-origin-works-d97d55946d9#:~:text=The%20error%20stems%20from%20a,the%20browser's%20cookie%20storage%20system。
作为结论 - 没有“正常”的方法可以在客户端修复它。您可以尝试使用代理来调用请求的临时解决方案。
例如 - 向 https://cors-anywhere.herokuapp.com/https://c.t.com/t1/index.mpl
发出 ajax 请求