php后台跨域解决

    跨域主要是由于浏览器的同源策略导致的,服务器并没有跨域这么一说,主要是只对于js的一个限制(为了安全着想) 
    在php中敲上如下代码:
   
//指定信任的域名来接受响应
   header( 'Access-Control-Allow-Origin:*' );//信任所有域名
   header('Access-Control-Allow-Origin:a.com');//信任某个域名
    header('Access-Control-Allow-Origin:'.array('a.com','b.com'))//信任某些域名
   
  // 允许携带 用户认证凭据(也就是允许客户端发送的请求携带Cookie)
   header( 'Access-Control-Allow-Credentials:true' );
  
这篇文章讲的挺有趣,通俗易懂:
http://www.tuicool.com/articles/zEjA7b
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Uniapp 是一个跨平台的应用开发框架,可以将一个应用同时打包成 H5、小程序和 APP 等多个平台。在将 Uniapp 应用运行到浏览器时,由于浏览器的同源策略,可能会遇到跨域问题。那么如何解决呢?以下是几种可能的解决方案。 1. 在后台设置跨域请求头。如果 Uniapp 应用需要访问后台接口,可以在后台服务器上设置响应头,允许来自特定域名的跨域请求。例如,在 PHP 后台可以添加以下代码: ``` header('Access-Control-Allow-Origin: http://yourdomain.com'); ``` 其中 `yourdomain.com` 是允许跨域请求的域名。 2. 使用代理服务器。在开发环境下,可以使用代理服务器来绕过同源策略。比如,使用 `http-proxy-middleware` 做代理,将需要跨域请求的接口代理到同域下的接口。这样,在本地开启的服务器就可以访问后台接口了。 3. 在 config 文件夹下的 index.js 中设置反向代理。根据需要进行配置,通过修改 proxyTable 将目标服务器的地址和端口指向本地的代理服务器,从而实现跨域。例如: ``` proxyTable: { '/api': { target: 'http://localhost:8080', changeOrigin: true, pathRewrite: { '^/api': '' } } } ``` 其中,`/api` 是需要反向代理的路径,`target` 是目标服务器的 IP 和端口,`changeOrigin` 设置为 `true` 表示修改请求头,将主机名设置为目标服务器的地址,`pathRewrite` 用于重写路径。 4. 使用 JSONP。如果后台接口可以返回 JSONP 格式的响应,可以在前端通过动态插入script 标签的方式实现跨域请求。 以上是几种可能的解决方案,根据实际情况选择合适的方法即可。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值