请原谅我这个非常愚蠢的问题。
我目前在 CXF 上运行了一些 RESTful/SOAP Web 服务。(实际上是三个)这是一个示例
<blueprint ...>
<reference id="myWebServiceRef"
interface="com.keeboi.samples.MyWebService" />
<jaxrs:server address="/my-web-service" id="myWebService">
<jaxrs:serviceBeans>
<ref component-id="myWebServiceImpl" />
</jaxrs:serviceBeans>
</jaxrs:server>
<bean id="myWebServiceImpl"
class="com.keeboi.samples.MyWebServiceImpl">
<property name="myWebService" ref="myWebServiceRef" />
</bean>
</blueprint>
我通过 ajax 调用访问它们
$.ajax({
url : ws_url + id,
type : "GET",
dataType : 'text',
}).done(function(data) {
// Magic happens
});
我希望这些 Web 服务在内部使用时无法被用户完成的请求访问。如何保护这些 Web 服务?
添加:
<jaxrs:properties>
<entry key="org.apache.cxf.endpoint.private" value="true" />
</jaxrs:properties>
将它们设为私有但无法访问我的 ajax 请求......我显然在这里遗漏了一些东西。谁能指出我正确的方向?