Pivotal Web 服务中托管的 Spring RESTful 没有“Access-Control-Allow-Origin”错误

2023-12-09

我创建一个RESTful API with Spring boot并将其托管在Pivotal web services.

假设网址是https://abc.cfapps.io/studentsjson 结果将是

[

       {"id":1,"name":"Michael","score":8.5},
       {"id":2,"name":"Naomi","score":5.6}
]

然后我编写一个 Angular 客户端来向该 url 发送请求:

angular.module("app", []).controller("listController", function($scope, $http)
{
    var url = 'https://abc.cfapps.io/students';
    var httpRequest = new XMLHttpRequest();
    httpRequest.open('GET', url, true);
    httpRequest.setRequestHeader('Access-Control-Allow-Origin', '*');
    httpRequest.setRequestHeader('Content-Type', 'application/json');
    httpRequest.onerror = function (XMLHttpRequest, textStatus, errorThrown) {
        console.log('failed');
        console.log(JSON.stringify(XMLHttpRequest));
    };
    httpRequest.onload = function () {
        console.log('SUCCESS!');
    }
    httpRequest.send();        
});

我的客户跑进来localhost:52442并在我的Spring boot service我也允许CORS, too.

@RestController
@CrossOrigin(origins = "http://localhost:52442")
@RequestMapping(value="/students")
public class StudentService
{

    @RequestMapping(value="/",method = RequestMethod.GET)
    public ArrayList<Student> getListStudents()
    {
        // return list
    }

// other methods
}

但我不断收到此错误:

XMLHttpRequest cannot load https://abc.cfapps.io/students.         
Response to preflight request doesn't pass access control check:     
No 'Access-Control-Allow-Origin' header is present on the requested resource.        
Origin 'http://localhost:52442' is therefore not allowed access. The response had HTTP status code 403.

如果你在后端使用java代码

我们可以尝试通过为它创建一个类来以这种方式配置它

   package com.web;

   import org.springframework.stereotype.Component;

   import javax.servlet.*;
   import javax.servlet.http.HttpServletResponse;
   import java.io.IOException;

/**
 * Note this is a very simple CORS filter that is wide open.
 * This would need to be locked down.
 */
@Component
public class CORSFilter implements Filter {

    public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
        HttpServletResponse response = (HttpServletResponse) res;
        response.setHeader("Access-Control-Allow-Origin", "*");
        response.setHeader("Access-Control-Allow-Methods", "POST, GET, PUT, OPTIONS, DELETE");
        response.setHeader("Access-Control-Max-Age", "3600");
        response.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
        chain.doFilter(req, res);
    }

    public void init(FilterConfig filterConfig) {}

    public void destroy() {}

}

我认为这可能有用

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Pivotal Web 服务中托管的 Spring RESTful 没有“Access-Control-Allow-Origin”错误 的相关文章

  • Angularjs - ng-click 函数与指令

    我无法决定在以下情况下使用哪种方法 我试图在点击按钮时发出警报 我可以使用两种方法来做到这一点 哪个是最佳实践 请告诉我为什么 Method 1 div div
  • 尝试使用 Spring boot CLI 加密时出现错误“‘encypt’不是有效命令”

    我正在尝试使用 Spring boot CLI 1 5 7 加密密码 spring encrypt mysecret key ashish 我收到此命令的以下错误 encypt is not a valid command See help
  • 无法渲染尤里卡仪表板

    我正在使用 spring boot 创建 spring eureka 独立应用程序服务器 但是 当我尝试加载尤里卡服务器仪表板时 会出现附件所示的错误页面 pom xml 是 http maven apache org xsd maven
  • Jersey:返回字符串列表

    我尝试以 JSON 和 XML 形式返回 Jersey 中的字符串列表 我以为这会是微不足道的 我的第一次尝试是写这样的东西 GET Produces MediaType APPLICATION JSON MediaType APPLICA
  • Angularjs:当滚动到达div中滚动条的底部时如何触发事件?

    我试图在滚动条到达末尾时触发一个事件 我找到了这个这个例子 http jsfiddle net ADukg 4831 这是我的代码 问题是它根本不调用 load more 控制台语句的值为 848 899 in scroll 881 899
  • 使用 REST 协议和 JSON 数据格式测试 Web 服务的最佳工具是什么? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我是使用 JSON 数据格式测试 REST Web 服务的新手 我尝试了SOUPUI 但不幸的是不支持
  • 关闭特定url上的AngularJS窗口

    我是 angularjs 的新手 所以这个问题对于经验者来说可能看起来很愚蠢 但我真的无法执行此操作 任何人都可以告诉我如何在到达特定网址后从 webview 返回到应用程序 就像我正在打开一个浏览器中的窗口用于支付过程 所以我需要的是 当
  • 如何在 AngularJS/Bootstrap3 中禁用基于复选框的内容

    我正在创建一个表单 用户可以在其中配置重复事件 因此有大量控件 顶部是一个用于启用 禁用计划的复选框 如何禁用但不隐藏基于复选框的整个部分 如果选中 用户应该能够对时间表进行修改 如果没有检查 则不允许进行任何更改 我相当确定我可以在每个控
  • 如何从此 d3.js layout.tree 获取树祖先和树后代的列表?

    我正在尝试和修改this https bl ocks org mbostock 4339083d3 js 的示例 用于根据 JSON 树结构绘制树 这就是树的一部分开始时的样子 我正在尝试进行两个单独的修改 但我不知道该怎么做 当单击节点的
  • 有 Objective-C Web 框架吗?

    有 Objective C Web 框架吗 我发现的唯一框架是 frothkit 我主要寻找一种在 Objective C 中编写 RESTful json Web 服务的方法 GNUStepWeb http wiki gnustep or
  • 在flutter中使用REST api将列表数据发送到cloud firestore时出错

    我无法在 flutter 中使用 REST api 将字符串列表发送到云 firestore here is my code Future
  • 如何让 Swagger UI 的参数成为下拉菜单而不是文本输入

    我正在使用 swagger 来显示我的 RESTApi API 的一个参数将字符串作为输入并将其转换为枚举值 有没有办法在 Swagger UI 上显示下拉菜单而不是文本输入字段 以便用户只能选择枚举值中的字符串值 您可以使用以下 swag
  • WebAPI 和 Angular JS Excel 文件下载 - 文件损坏

    我正在 WebAPI 中生成 Excel 文件 我将其 存储 在内存流中 然后放入响应 如下所示 var result new HttpResponseMessage HttpStatusCode OK Content new Stream
  • 使 WebAPI 操作异步?

    我有一个问题 关于在 WebAPI MVC 控制器 AJAX 请求上使用 async await 是否有益 假设我有一个与 Web API 后端对话的 AngularJS 应用程序 并且我想获取一些数据 我对 Web API 进行了一些 A
  • Angular - 过滤器从数组中删除空白字符串

    我有一个数组对象 数组可以包含空格 我如何创建 Angular 过滤器来删除空格以确定数组的长度 scope myData 1 1 4 4 N 4 6 8 2 2 4 6 0 6 5 4 2 8 2 3 3 F D 3 5
  • 如何访问 Angularjs 模板中的常量

    如何将公共js文件中定义的常量访问到不同模块的模板中 如果我在 MainModule js 中定义了一个这样的常量 该常量包含在主 html 文件的开头 gt var myApp angular module AC gt myApp con
  • Angular JS未知提供者错误

    删除 Bower components 并清理缓存后 我使用 Bower install 重新安装了依赖项 该应用程序无法加载并出现以下错误 未捕获的错误 injector unpr 未知提供程序 forceReflowProvider 这
  • Internet Explorer Selenium Protractor e2e 测试

    我想在我们的 CI 构建过程中添加一些 e2e 测试 我已经针对 chrome firefox 添加了它们 作为最简单的 但我真的很想为几个 IE 版本做这件事 如何在 linux mac 上的构建过程中注入它 我发现这样的文章 http
  • 从 mvc web api httpresponse 生成 csv 并通过 angularjs 接收以供下载

    我正在尝试从我的 Web api 生成一个 CSV 文件并通过 angularjs 接收该文件 我有一个如下所示的 API 控制器 HttpPost public HttpResponseMessage GenerateCSV FieldP
  • 使用 TFS REST API 获取迭代中的所有工作项

    我正在尝试获取有关当前冲刺中所有用户故事的一些信息 我可以轻松获取当前冲刺的路径 并且给定工作项的 ID 列表 我可以从其中获取所需的内容 但我不确定如何从迭代路径获取这些 ID 我见过使用 C 和查询的示例 但我使用的是 javascri

随机推荐

  • WasapiLoopbackCapture 内部音频识别在没有音频时给出乱码和文本

    我终于构建了一个程序来使用 NAudio 监听内部音频环回 并输出识别的文本 问题是它会听 并且总是说 例如 Recognized text had Recognized text had Recognized text had Recog
  • iOS应用程序更改仅适用于iPhone

    我们有一个应用程序作为通用应用程序提交 支持所有设备 iPad 和 iPhone 但我们不再希望它在商店中显示为 iPad 应用程序 我们希望它只是 iPhone 专用应用程序 这个应用程序是用Appcelerator构建的 所以我已经更改
  • reactjs.net - 渲染时是否需要react-text标签?

    我一直在关注这个教程http reactjs net getting started tutorial html一切都很好 但是在最终的输出源中 我得到以下注释标签 为什么文本包裹在react text标签 它们是必需的标签吗 为什么它们出
  • 何时更喜欢 JSON 而不是 XML?

    我的要求只是在跨页上显示从数据库检索到的一组值 我正在使用jquery 当满足以下任一条件时 优先选择 XML 而不是 JSON 您需要消息验证 您正在使用 XSLT 您的消息包含大量标记文本 您需要与不支持 JSON 的环境进行互操作 当
  • 尝试引用活动工作簿中的另一个工作表

    我试图在单击命令按钮时使另一个工作表处于活动状态 但我仍保留在同一个活动工作簿中 Sub Submit Warranty Set warranty data worksheet as active page Sheets Sheet2 Ac
  • 基于 pandas 数据框 python 同一列中的先前值的条件替换

    感觉我几乎到处都看过了 我知道这可能是非常简单的事情 我正在使用 pandas 数据框 并希望根据同一列中的数据填充 替换其中一列中的数据 我通常更喜欢使用 Excel 而且 Excel 非常简单 如果我们有 df pd DataFrame
  • 访问 python 超类属性时遇到问题[重复]

    这个问题在这里已经有答案了 我有两个类 大致采用以下形式 class Foo def init self foo self foo foo class Bar Foo def bar self print self foo 当我尝试调用ba
  • AWS Lambda 和 python numpy 模块

    我正在尝试在 aws lambda 中导入 python 部署包 python代码使用numpy 我按照虚拟环境的部署包说明进行操作 但它仍然给出 Missing required dependency numpy 我按照上给出的指示进行操
  • JspWriter 和 PrintWriter 有什么区别?

    JspWriter 和 PrintWriter 之间有什么区别 来自javadoc 这个抽象类模拟 java io BufferedWriter 和 java io PrintWriter 类中的一些功能 但不同之处在于它从打印方法中抛出
  • Flexbox 子项可以有溢出滚动条吗?

    我想使用CSS3 弹性盒模型创建跨设备布局并发现HugoGiraudel 的一个很好的布局示例我用它作为起点 布局基本上是这样的 HTML 的结构如下 div class wrapper div
  • Mysql MySQL 或 PHP 动态将行转换为两列

    我有和我一样的场景MySQL 或 PHP 将行转换为列 但我现在必须重组我的表 这是输出 它与上面的链接几乎相同 但我要包含 AS amount 任何人都可以帮助我吗 我想要下面的结果 但每个 FA mont2016 的右侧都有 AS mo
  • MVC 6 中的路由

    我有一个超级简单的控制器 有两种方法 public IActionResult Users long id return Json new name Example User public IActionResult Users retur
  • 使用 Wordnet Synset 的定义方法未获得所需的输出

    from nltk corpus import wordnet syn wordnet synsets cookbook 0 print syn definition 预期输出 a book of recipes and cooking d
  • 将“整数字符串”转换为整数数组

    我正在尝试将整数数组传递到我的程序中 有没有更好的方法将其转换为整数 我当前收到错误 可变大小的对象可能未初始化 for i 0 i lt argc i int arr i atoi argv i 假设argc and argv是传递给 m
  • Jelly Bean Google Voice 文本转语音 API?

    有什么方法可以使用新版 Google Voice 中的文本转语音功能吗 Jelly Bean 的发音非常流畅 所以我在想是否有某种 API 可以访问该服务 Thanks 是的 可以使用 Android TTS API 访问 Google N
  • 添加母版页后,图像不会在我的 aspx 页面上呈现..如果没有更改 ID ..还有什么原因?

    使用以下代码来删除系统生成的 ID 横幅 ascx cs protected override void Render System Web UI HtmlTextWriter writer StringWriter Html new St
  • 表单提交后 PHP 会话变量出现问题

    我正在为我提交的 HTML 表单设置一个包含成功消息的 PHP 会话变量 如果没有表单错误 我将重定向到同一页面 使用 header 并显示会话变量中的消息 直到这里一切都很好 但是如果我在提交后再次访问该页面 该消息仍然存在 是否可以使其
  • MySQL 查找最接近点的多边形

    我有一个包含地理标记对象的 MySQL 数据库 通过使用用户绘制的边界多边形来标记对象 并且我的程序将其导出到数据库中 边界多边形作为多边形 MySQL 空间扩展类型 存储在数据库中 我可以想到几种方法来做到这一点 但我对其中任何一种都不是
  • 从 npm 弃用请求模型后如何安装 @vue/cli?

    我正在 Windows 10 上工作 我正在尝试使用其文档中的代码安装 vue cli npm install g vue cli 它不起作用并返回此错误 npm 警告已弃用 电子邮件受保护 请求已被弃用 我该如何安装该软件包 如果您使用
  • Pivotal Web 服务中托管的 Spring RESTful 没有“Access-Control-Allow-Origin”错误

    我创建一个RESTful API with Spring boot并将其托管在Pivotal web services 假设网址是https abc cfapps io studentsjson 结果将是 id 1 name Michael