Java 如何解决alfresco sdk中alfresco WebScript中的CORS错误?
我已经创建了一个alfresco webscript,可以使用以下url访问: {itemIid} 例如: 当我直接从浏览器地址栏点击时,它工作得很好,但是当我从angular服务调用它时,我得到了CORS错误 加载失败:对飞行前请求的响应未通过访问控制检查:请求的资源上不存在“访问控制允许来源”标头。因此,不允许访问源“” 我的观点是:Java 如何解决alfresco sdk中alfresco WebScript中的CORS错误?,java,angular,cors,alfresco,alfresco-webscripts,Java,Angular,Cors,Alfresco,Alfresco Webscripts,我已经创建了一个alfresco webscript,可以使用以下url访问: {itemIid} 例如: 当我直接从浏览器地址栏点击时,它工作得很好,但是当我从angular服务调用它时,我得到了CORS错误 加载失败:对飞行前请求的响应未通过访问控制检查:请求的资源上不存在“访问控制允许来源”标头。因此,不允许访问源“” 我的观点是: convert1(itemId:string){ var headers = new Headers(); headers.set('Con
convert1(itemId:string){
var headers = new Headers();
headers.set('Content-Type','*');
headers.set('Access-Control-Allow-Origin','*');
headers.append('Authorization','Basic zfsdfsdfsdfdsf=');
return this.http.get(http://localhost:9191/alfresco/s/search/item/it0001,{headers:headers});
}
在alfresco repo方面,我在webscript代码中添加了以下内容,但这并没有帮助
response.setHeader("Access-Control-Allow-Origin", "*");
我可以在我的alfresco repo放大器插件中做哪些更改,以避免此错误
如有任何见解,将不胜感激
--------杰夫·波茨回答之后-----
1。D:\abcd app repo\target\amp war\WEB-INF\WEB.xml
科尔斯
com.thetransactioncompany.cors.CORSFilter
cors.allowgenerichtt前传
真的
金鸡儿
*
cors.allowSubdomains
真的
cors.supportedMethods
获取、标题、发布、放置、删除、选项
cors.supportedHeaders
来源、授权、x文件大小、x文件名、内容类型、接受、x文件类型
cors.supportsCredentials
真的
科斯马克萨奇酒店
3600
全局定位滤波器
/*
要求
科尔斯
/原料药/*
/服务/*
//*
/CMIS浏览器/*
问题可能出在后端。。你在aspnet中使用webapi吗?谢谢puntanet,我想你是对的,我的后端代码有问题。但我使用的是基于java的alfresco webscriptsi,但在aspnet中也有类似的问题。我通过在我的背部添加EnableCors解决了这个问题。。你可以试着为Java寻找类似的东西,非常感谢puntanet。我可以知道你在开发alfresco插件或其他web应用程序。我为公司管理开发web应用哇,很高兴在这里见到您,非常感谢Jeff来到这里,我尝试了相同的方法并更新了文件,正如我在编辑的问题中提到的,但仍然无法使用Inglet的备份。你正在做一个GET,如果它运行正常,端口打开,那么它在到达端点时应该不会有问题。你能用curl做同样的GET,看看会发生什么吗?也许可以使用curl-v打开详细日志记录。
1. D:\abcd-app-repo\target\amp-war\WEB-INF\web.xml
<!-- CORS Filter Begin -->
<filter>
<filter-name>CORS</filter-name>
<filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>
<init-param>
<param-name>cors.allowGenericHttpRequests</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>cors.allowOrigin</param-name>
<param-value>*</param-value>
</init-param>
<init-param>
<param-name>cors.allowSubdomains</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>cors.supportedMethods</param-name>
<param-value>GET, HEAD, POST, PUT, DELETE, OPTIONS</param-value>
</init-param>
<init-param>
<param-name>cors.supportedHeaders</param-name>
<param-value>origin, authorization, x-file-size, x-file-name, content-type, accept, x-file-type</param-value>
</init-param>
<init-param>
<param-name>cors.supportsCredentials</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>cors.maxAge</param-name>
<param-value>3600</param-value>
</init-param>
</filter>
<!-- CORS Filter End -->
<!-- Enterprise filter placeholder -->
<filter-mapping>
<filter-name>Global Localization Filter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
<!-- CORS Filter Mappings Begin -->
<filter-mapping>
<filter-name>CORS</filter-name>
<url-pattern>/api/*</url-pattern>
<url-pattern>/service/*</url-pattern>
<url-pattern>/s/*</url-pattern>
<url-pattern>/cmisbrowser/*</url-pattern>
</filter-mapping>
<!-- CORS Filter Mappings End -->