angular中的$http请求跨域,采用CROS方式解决

anjular中的controller层$http服务,解决跨域请求。

js书写:

/**
     * 采用CORS方式实现ajax跨域请求
     */
    $http({
        method:"post",  // 请求方式可以为post,也可以为get
        params:"",
        url:"http://localhost:8080/getArray",  // 跨域请求的路径
    }).success(
        function (response) {
            $scope.array = response;
        }
    );

服务层书写:

@RequestMapping("/getArray")
    @ResponseBody
    public List<Integer> getArray(HttpServletResponse response) {
        
        List<Integer> list = new ArrayList<>();
        
        list.add(1);
        list.add(2);
        list.add(3);
        list.add(4);
        list.add(4);

  // 此处要添加需要跨域时,响应头,"http://localhost" 为 前端页面请求的源地址
        response.setHeader("Access-Control-Allow-Origin", "http://localhost");  
        
        return list;
        
    }

添加的响应头信息,可以通过 浏览器页面查看相应的请求origin;同时也可以看出响应的时候,服务端的响应信息是否添加成功

原文地址:https://www.cnblogs.com/rensheng/p/9998138.html

时间: 2024-10-09 23:08:03

angular中的$http请求跨域,采用CROS方式解决的相关文章

在ABP的Web层中实现复杂请求跨域访问

在最近的项目中,后端使用ABP,前端采用React,前后端完全分离.其中大部分接口都通过WebApi层调用,项目中未使用Session.但最后在做一个留言的验证码时,使用了Session验证的方式,所以将验证码请求与校验功能放在了Web层.由于测试阶段前后端不同域,涉及到跨域请求的问题.跨域问题可以通过代理等手段解决,但是也可以在后端做些简单的修改来进行实现.WebApi的跨域处理比较简单,有官方给出的解决方案.但是Web层一般不涉及跨域,所以自己进行了探索实现. 一.常见方案 在web.con

在vue中使用axios实现跨域请求并且设置返回的数据的格式是json格式,不是jsonp格式

在vue中使用axios实现跨域请求 需求分析:在项目中需要抓取qq音乐的歌曲列表的数据,由于要请求数据的地址url=https://c.y.qq.com/splcloud/fcgi-bin/fcg_get_diss_by_tag.fcg.从qq音乐的官网上可以看到该请求的请求头中的referer中的域名是y.qq.com(发送请求页面的域名),而host的域名是c.y.qq.com(被请求页面的域名),由于两者不一样,所以不能通过前端直接发送请求给qq服务器去拿数据.这时候需要服务器做一个代理

angular 中的 http 请求

angular 中使用 http 请求的前提,需要引入 httpClientModule 模块 根模块中 app.module.ts: import { HttpClientModule } from '@angular/common/http' imports: [ BrowserModule, AppRoutingModule,   HttpClientModule ], 组件中: import { HttpClient} from '@angular/common/http' constr

ASP.NET中Cookie跨域的问题及解决代码

ASP.NET中Cookie跨域的问题及解决代码 http://www.liyumei.net.cn/post/share18.html Cookies揭秘  http://www.cnblogs.com/zhangziqiu/archive/2009/08/06/cookies-javascript-aspnet.html 最近在项目开发中遇到一个很棘手的问题,一个用户在顶级域名登录后,跳转到自己所拥有的二级域名下管理二级网站时,cookie丢失了,一直找解决办法找了整整两天,百度谷歌一大堆,

百万年薪python之路 -- 请求跨域和CORS协议详解

楔子 什么是同源策略 同源策略,它是由Netscape提出的一个著名的安全策略.现在所有支持JavaScript 的浏览器都会使用这个策略.所谓同源是指,域名,协议,端口相同.当一个浏览器的两个tab页中分别来自127.0.0.1:8000和127.0.0.1:8001的页面,当浏览器的127.0.0.1:8000的tab页执行一个脚本的时候会检查这个脚本是属于哪个页面的,即检查是否同源,只有和127.0.0.1:8000同源的脚本才会被执行.如果非同源,那么在请求数据时,浏览器会在控制台中报一

访问腾讯存储桶中的文件,跨域问题的解决

报错如上图,场景:前端同事在使用js请求时,引出来的这个问题. 就报错而言不难解决,在对相应的桶做一个cors配置即可.但问题是依旧是报跨域的错,配置了跨域头未生效. 究其原因,大概率是可能在用户第一次访问cdn,cdn会检查数据没有,回源到源站进行访问.源站对比将数据经过cdn反馈给客户端浏览器.浏览器比对Access-Control-Allow-Origin 后,允许正确,所以跨域正常. 当第二个用户访问时,cdn检测有这个文件,所以会直接给客户端反馈缓存页面.由于CDN之所以失败是因为CD

[php-cookie] cookie 请求跨域,如何共享

cookie 请求跨域的问题, 假设我有两个域名,一个 m.example.com,另一个是 www.example.com . 那么我需要如何设置 cookie 才可以在这两个域名都实现共享呢? // m.example.com & www.example.com 的根域名都是 example.com // 所以在 setcookie 时,我们只需要在指定的 $domain 设置为了该公共的根域名即可,实现两个域名共享访问 cookie 值 // bool setcookie ( string

php options 请求跨域

请求跨域,前端发送options请求时,加上一下请求头即可: header("Access-Control-Allow-Origin: *");header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, Authorization");header('Access-Control-Allow-Methods: GET, POST, PUT,DELETE,O

【Todo】JS跨域访问问题的解决

做双十一,需要在主会场页面,嵌入我们产品的JS豆腐块.而这个豆腐块需要调用我们后端的数据接口,涉及跨域访问. 参考 http://www.cnblogs.com/2050/p/3191744.html 方案1: 在js中,我们虽然不能直接用XMLHttpRequest请求不同域上的数据时,但是在页面上引入不同域上的js脚本文件却是可以的,jsonp正是利用这个特性来实现的. jquery的jsonp形式: 服务器端如下: protected void Page_Load(object sende