javascript - ajax中的 textStatus 報錯為 parsererror?
問題描述
ajax中的 textStatus 報錯為 parsererror。
<!DOCTYPE html><html> <head><meta charset='UTF-8'><title></title> </head> <body><script src='http://www.4tl426be.cn/wenda/js/jquery-1.8.0.min.js' type='text/javascript' charset='utf-8'></script><script src='http://www.4tl426be.cn/wenda/js/jq.js' type='text/javascript' charset='utf-8'></script><script type='text/javascript'> $.ajax({type: 'GET',url: 'http://192.168.20.205:8080/platform/banner/bannerApi',async:true,dataType: 'jsonp', jsonp: 'callback',success:function(req){ console.log(req); }, error:function(XMLHttpRequest, textStatus, errorThrown) {alert(XMLHttpRequest.status);//400 alert(XMLHttpRequest.readyState);//2 alert(textStatus);//parsererror } });</script> </body></html>
求大神指點,之前真心沒有碰到這種問題,獲取其他方法也可以,坐等
問題解答
回答1:這個大概要結合后臺,指明一個名字為 jsonpCallback 參數吧。
回答2:返回的東西是jsonp格式嗎?
回答3:題主,這個是跨域問題如果后端是你寫的話你可以通過配置Cors,代碼如下,希望能幫到你,對了spring要掃描到
/** * Created by sunny on 2017/6/22. */public class CorsConfig extends WebMvcConfigurerAdapter { @Override public void addCorsMappings(CorsRegistry registry) {registry.addMapping('/**').allowedOrigins('*').allowCredentials(true).allowedMethods('GET', 'POST', 'DELETE', 'PUT').maxAge(3600); } @Override public void addInterceptors(InterceptorRegistry registry) {WebContentInterceptor webContentInterceptor = new WebContentInterceptor();CacheControl nocache = CacheControl.noCache();webContentInterceptor.addCacheMapping(nocache, '/**');registry.addInterceptor(webContentInterceptor); }}回答4:
后臺返回的dataType與ajax請求的dataType不一致
相關文章:
1. javascript - 關于apply()與call()的問題2. 安全性測試 - nodejs中如何防mySQL注入3. java - spring boot 如何打包成asp.net core 那種獨立應用?4. java - 在用戶不登錄的情況下,用戶如何添加保存到購物車?5. javascript - nginx反向代理靜態資源403錯誤?6. docker網絡端口映射,沒有方便點的操作方法么?7. docker - 各位電腦上有多少個容器???容器一多,自己都搞混了,咋辦呢?8. MySQL 查詢疑問?9. 推薦好用mysql管理工具?for mac和pc10. javascript - 如何將函數計算出的內容傳遞為變量
