首页 > 其他分享 >网页跨域ajax请求问题

网页跨域ajax请求问题

时间:2023-02-15 20:33:38浏览次数:28  
标签:Origin 网页 跨域 apache2 Access ajax api Allow data

  今天用php的项目网页请求另一个服务器的rails项目的api。首先解决php项目的跨域问题。服务器是ubuntu 用的apache2。

  修改文件 /etc/apache2/apache2.conf, 添加一行 Header set Access-Control-Allow-Origin "*"

  

<Directory /var/www/html>
     Order Allow,Deny
     Allow from all
     AllowOverride all
     Header set Access-Control-Allow-Origin "*"
</Directory>

 

  然后新增header module

a2enmod headers 

 

  之后重启apache2

/etc/init.d/apache2 restart

 

  页面的Ajax请求改为如下,数据类型一定是jsonp

$.ajax({
    type:"GET",
    crossDomain: true,
       dataType: 'jsonp',
       headers: {
              "accept": "application/json",
              "Access-Control-Allow-Origin":"*"
        },
           crossDomain: true,
    url: 'http://localhost:3000/api/v1/parts/search_parts?keyword=xxx',
    success: function(data) {
            console.log(data)
        },
        error: function() { alert('Failed!'); }
})   

 

  最后修改rails api的返回,格式如下,data是要返回的结果。

render :json => data.to_json, :callback => params['callback']

 

  

标签:Origin,网页,跨域,apache2,Access,ajax,api,Allow,data
From: https://www.cnblogs.com/wangyuyu/p/17124554.html

相关文章

  • Python+Django(4):创建其他网页(模板继承)
    模板继承:1,修改主页父模板:抽取通用元素,在index.html同级目录下新建base.html<p><ahref="{%url'learning_logs:index'%}">LearningLog</a></p>{%blockcont......
  • Spring Boot项目设置跨域
    一、跨域设置新建一个配置类importjava.io.IOException;importjavax.servlet.Filter;importjavax.servlet.FilterChain;importjavax.servlet.FilterConfig;im......
  • django解决跨域请求
    安装django-cors-headerspython-mpipinstalldjango-cors-headers在#setting.py下添加如下代码INSTALLED_APPS=[...,"corsheaders",...,]MIDDL......
  • node获取网页内容(标题、摘要、图片)
    首先有node,然后是引入模块,这是必备fs模块写入文件path模块定义文件路径request模块定义发送请求(requests可能要好点,各位如果需要改的自行百度)cheerio模块定义内容加载成DO......
  • 自定义跨域中间件
    fromdjango.utils.deprecationimportMiddlewareMixin​​classCorsMiddleware(MiddlewareMixin):  """屏蔽CORS跨域"""​  defprocess_response(self,reques......
  • 解决vue和idea端口号不同-即跨域问题
    当vue端口号为:8081,idea端口号为8080  网页响应Request解决方法在idea的在Controller类上加上如下注解:@CrossOrigin(origins={"*","null"})   ......
  • djiango框架前端数据通过Ajax传到后端进行处理
    最近在琢磨搭建测试平台,python相对来说简单一点,框架的话就选择djiango框架,既然搭建平台就肯定需要进行数据处理,摸索了一下,在此记录一下数据的梳理流程。1.首先自己写一个......
  • axios配置onUploadProgress产生跨域问题
    axios配置onUploadProgress产生跨域问题onUploadProgress监听上传进度产生跨域问题起因:ie和edge浏览器在调用xhr.upload.onprogress进度事件时,仍然只会发送post或者ge......
  • Nginx一网打尽:动静分离、压缩、缓存、黑白名单、跨域、高可用、性能优化...
    Nginx一网打尽:动静分离、压缩、缓存、黑白名单、跨域、高可用、性能优化...Linux就该这么学 2023-02-1508:02 发表于北京作者:竹子爱熊猫  来源:juejin.cn/post/71......
  • a标签跳转下载 并且阻止新网页跳转
    利用a标签下载一、a标签下载文件<ahref="完整下载地址"></a>但是这样会有一个问题,就是下载是可以下载了,但是同样触发了a标签的页面跳转功能。<a:href="`${完整的下载......