|
本帖最后由 老来 于 2018-1-18 11:20 编辑
项目部署情况是UI部署在172.16.100.123:2888上,baasServer部署在192.168.100.2888上
baasServer里面的web.xml配置了跨域访问
<servlet>
<servlet-name>WeX5_Baas_Servlet</servlet-name>
<servlet-class>com.justep.baas.servlet.BaasServlet</servlet-class>
<init-param>
<param-name>Access-Control-Allow-Origin</param-name>
<param-value>*</param-value>
</init-param>
<!-- 跨域访问设置
-->
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>WeX5_Baas_Servlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
UI上通过$.ajax调用
$.support.cors = true;
$.ajax({
"type" : "post",
"url" : "http://192.168.100.158:2888/tsgryyWebservices/PatientInfo/getLabMasterByPatientId",
"dataType" : "json",
"data" : {
"patient_id" : patient_id,
"visit_date" : visit_date,
"limit" : labData.limit,
"offset" : 1
},
"success" : function(resultData) {
// labData.loadData(resultData, append);
var rownum = resultData.rows.length;
if(rownum > 0){
labData.loadData(resultData, true);
// labData.loadData(resultData, true, null, index, override);
}else{
self._temp = true; //无数据,不再刷新
self.comp("messageDialog1").show({
"title" : "温馨提示",
"message" : "暂无可查询记录"
});
return false;
}
},
"error" : function(xhr, txt) {
alert(txt);
}
});
访问结果:提示跨域错误- Response Headersview source
- Content-Encoding:
gzip - Content-Type:
text/html;charset=utf-8 - Date:
Thu, 18 Jan 2018 02:23:04 GMT - Server:
Apache-Coyote/1.1 - Transfer-Encoding:
chunked - Vary:
Accept-Encoding
- Request Headersview source
- Accept:
application/json, text/javascript, */*; q=0.01 - Accept-Encoding:
gzip, deflate - Accept-Language:
zh-CN,zh;q=0.8 - Connection:
keep-alive - Content-Length:
53 - Content-Type:
application/x-www-form-urlencoded; charset=UTF-8 - Host:
192.168.100.158:2888 - Origin:
http://172.16.100.123:2888 - Referer:
http://172.16.100.123:2888/x5/UI2/v_/wxTsgryy/patientReportNew.w?device=m - User-Agent:
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.4 Safari/537.36
请问这个问题怎么处理
|
|