我正在使用wso2的DAS。我有一个输入适配器类型为http的事件接收器。在使用jquery的html中,我通过post方法将json发送到此事件。代码非常简单:
<script src="jquery.js"></script>
<script>
$( document ).ready(function() {
$("#senddata").click(function(){
$.post("http://localhost:9763/endpoints/ex", '{"event": {"payloadData": {"name": "gggg", "age": 37}}}')
.done(function( data ) {
console.log( data );
});
});
});
</script>
<body>
<input type="button" value="send" id="senddata"></input>
</body>
DAS正在https://localhost:9443中运行,而应用程序在http://localhost/s中使用html和jquery。当我执行应用程序并单击按钮时,控制台显示错误类型“Access-Control-Allow-Origin”。
DAS文档有一个会话“Analytics REST API的CORS设置”(https://docs.wso2.com/display/DAS300/CORS+Settings+for+the+Analytics+REST+API)。我遵循这条指令,但任何结果。错误仍然存在。
这是我对web.xml的配置
<filter>
<filter-name>CorsFilter</filter-name>
<filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
<init-param>
<param-name>cors.allowed.origins</param-name>
<param-value>*</param-value>
</init-param>
<init-param>
<param-name>cors.allowed.methods</param-name>
<param-value>GET,POST,HEAD,OPTIONS,PUT,DELETE,PATCH</param-value>
</init-param>
<init-param>
<param-name>cors.exposed.headers</param-name>
<param-value>Access-Control-Allow-Origin,Access-Control-Allow-Credentials</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CorsFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
另一方面,当我使用firefox的RESTClient时,结果是正确的。
答案 0 :(得分:1)
您需要更新内部的de web.xml:[DAS_HOME] \ repository \ conf \ tomcat \,配置相同。这在以前的DAS快照中不会发生,但在3.0.0版本中就是要更新的配置文件。