关于做反向代理问题

在前端跨域时,出现跨域访问接口是经常的事,我在做angular访问时,现在试验过的跨域方法有两种:jsonp和nginx反向代理。

其中的jsonp 比较简便一点:


data.js


但是在处理post请求时,这种方法显然不太合适。此时nginx跨域方案算的上是一种比较优质的方案。

1.anginx.conf配置文件在http 下面的server中,添加代理项:


前端代码中的请求也需要修改:

HTML:

<div id="hot" class="swiper-container hot" ng-app ="mhotVideo" ng-controller = "hotVideosctrl">
<ul class="swiper-wrapper">
<li class="swiper-slide" ng-repeat = "hotvideo in hotvideos track by $index">
<div class = "hotimg"><img src="{{hotvideo.wiki.screens[0].url}}" alt=""></div>
<div class = "hottip"></div>
<div class = "hottitle">{{hotvideo.wiki.title}}</div>
</li>

</ul>
</div>

JS:

var hotvideos = angular.module("mhotVideo",[]);
/*
hotvideos.config(function ($httpProvider){
      $httpProvider.defaults.transformRequest=function (obj){
       $.param(obj);
      };


        $httpProvider.defaults.headers.post['Content-Type']='application/x-www-form-urlencoded';
    });
    */
hotvideos.controller("hotVideosctrl",function($scope,$http){
var mjson = {"action": "GetWikiInfoByTagOrChildTag",
            "device": {
                "dnum": "123"
            },
            "user": {
                "userid": "123"
            },
            "param": {
                "child_tag":"动作",
                "country":"",
                "tag":"电影",
                "page": 1,
                "pagesize":10
            }
    };
//$scope.mpost = function(){
// console.log("post请求发起");
$http({
method:'post',
//url:"http://XX.XX.XX.XX:XXXX/Epg",
url:"/Epg",
data:mjson,
}).then(function(data){
console.log("请求发送成功");
$scope.hotvideos = data.data.wikis;
console.log($scope.hotvideos);
}).catch(function(){
alert("数据呢?");
});
//} ;
});
angular.bootstrap(document.getElementById("hot"), ['mhotVideo']);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值