首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对cors的msf4j支持

对cors的msf4j支持
EN

Stack Overflow用户
提问于 2018-11-24 13:37:28
回答 3查看 100关注 0票数 0

我使用MSF4J创建了一个微服务,并用postman测试了资源,一切正常,但是当我在Angular 5客户端应用程序中使用它时,浏览器会发送一个额外的http OPTIONS请求来检查CORS,我得到了一个"405 Method Not Allowed“的响应。有人能帮上忙吗?

EN

回答 3

Stack Overflow用户

发布于 2018-11-29 09:30:51

MSF4J没有CORS支持。如果要处理CORS请求,可将OPTION添加到资源方法中

票数 0
EN

Stack Overflow用户

发布于 2019-04-26 18:26:33

我遇到了同样的问题,我使用了一个名为ESB 的firefox插件,只是出于开发目的,但当它投入生产时,我必须通过一个在insequence中具有以下属性的传递请求

代码语言:javascript
复制
<property name="Access-Control-Allow-Origin" scope="transport" type="STRING" value="*"/>

这就解决了这个问题。我仍然不知道是否可以在微服务本身上启用CORS

票数 0
EN

Stack Overflow用户

发布于 2019-08-01 22:53:09

您必须实现一个OPTIONS方法。下面是我在一个老项目中使用的一个例子:

代码语言:javascript
复制
@GET
@Path("device")
@Produces({ "application/json" })
@RequestInterceptor(DeviceBasicAuthInterceptor.class)
public Response deviceGet() throws NotFoundException {
    //...
    return result;
}

@OPTIONS
@Path("device")
public Response deviceOptions() throws NotFoundException {
    String allowedOrigin = null;
    try {
        allowedOrigin = PropertyFileHandler.getInstance().getPropertyValueFromKey("api.cors.allowed");
    } catch (IllegalArgumentException | PropertyException | IOException e) {
        LOGGER.error("Could not get allowed origin.", e);
    }
    Response response = Response.ok().header("Allow", "GET").header("Access-Control-Allow-Origin", allowedOrigin)
            .header("Access-Control-Allow-Headers", "authorization, content-type").build();
    return response;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53455483

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档