zoukankan      html  css  js  c++  java
  • 关于ajax访问跨域问题

    记得以前在项目中使用ajax遇到跨域问题,

    一开始不知道ajax不能进行跨域请求接口,一直没有打开F12查看,就是返回不到数据,还以为自己的方法写错了,后来打开F12才知道是ajax不能进行跨域!

    现在知道了问题,所以要找到解决方法!

    在网上百度了各种方法:

    第一种是在你访问的php文件中添加如下:

    这种允许所有的网址访问:

    header('Access-Control-Allow-Origin:*');

    这种是允许你指定的网址进行访问:
    header('Access-Control-Allow-Origin:http://www.XXX.com');
    《这种方法虽然没有在项目中使用,但是在测试的时候是可以的》
    第二种是你使用jsonp访问你的接口方法:
    $.ajax({
      dataType: "jsonp",//jsonp的形式访问
      jsonp: "callback",//回调方法
    })
    php文件中返回数据的时候例如:
    echo
    $_POST['callback']."(".json_encode($data).")"
    ;
    这里使用你传过来的回调函数是防止你数据最后的分号被json解析,导致数据错误

    第二中方法是我在项目中使用的,可以达到自己的接口跨域访问解析,

    简单解析 希望可以记录自己成长的脚步。


  • 相关阅读:
    大一励志的我,现在已经大三了
    Jenkins+K8s实现持续集成
    Jenkins搭建自动化测试环境
    软件开发式样书 6
    软件开发式样书 5
    软件开发式样书 4
    软件开发式样书 3
    软件开发式样书 2
    软件开发式样书 1
    Git学习笔记
  • 原文地址:https://www.cnblogs.com/jhcyzxx/p/6639945.html
Copyright © 2011-2022 走看看