Ibm mobilefirst 如何使用curl和SOAP调用MobileFirst适配器?

Ibm mobilefirst 如何使用curl和SOAP调用MobileFirst适配器?,ibm-mobilefirst,mobilefirst-adapters,Ibm Mobilefirst,Mobilefirst Adapters,你好 我们需要通过curl和SOAP调用MobileFirst适配器,以实现身份验证 如何使用curl和application/x-www-form-urlencoded执行此操作的示例如下所示,但我们还需要使用SOAP调用适配器 curl -XPOST -d 'adapter=PushAdapter&procedure=sendNotifications&parameters=["[\"UserA\",\"UserB\"]", "Pushed.you"]' http://loc

你好

我们需要通过curl和SOAP调用MobileFirst适配器,以实现身份验证

如何使用curl和application/x-www-form-urlencoded执行此操作的示例如下所示,但我们还需要使用SOAP调用适配器

curl -XPOST -d 'adapter=PushAdapter&procedure=sendNotifications&parameters=["[\"UserA\",\"UserB\"]", "Pushed.you"]' http://localhost:10080/application/invoke
原因是,我们希望触发通过只允许SOAP的网络区域发送推送通知

我们对不同的建议持开放态度,比如实现一个新的JavaAdapter(不是JS),实现一个额外的WebService,或者任何能够以可接受的方式满足需求的东西

我希望有人能想出一个主意,如何通过SOAP调用适配器,ommiting身份验证

谢谢,, 吉兹莫尔

----编辑---

我添加了一个新的Java适配器,就像Hasan的视频所建议的那样。 非常感谢您的提示:)

在那里,我添加了如下Web服务:

@WebService
@Path("/soap")
@OAuthSecurity(enabled=false) // Disable the imfAuthentication :)
public class ExternalPushService {

    @POST
    @Path("/push")
    @WebMethod(action="push")
    public String push(@WebParam(name="name") String name) {
        return name + "ABC";
    }
}
我现在可以向端点发送HTTP POST请求,但是SOAP没有被解析。 相反,我在“name”参数中得到了完整的信封。 如果我对PushBridge/SOAP进行SOAP调用,我将得到405方法not allowed


有人有没有办法,我怎样才能把肥皂从盒子里拿出来?

答案是:没有

当您在java适配器中添加@WebService时,会出现以下情况:

问题描述:此批注需要一个web服务项目。将Java项目转换为针对指定运行时环境的web项目

SOAP基础服务基于JAX-WS规范

但是

Java适配器基于JAX-RS规范。

您可以从Adar那里得到一些想法。这个答案非常感谢。我现在更进一步,并附上我的下一步。哦,我想你误解了我的问题。我不想使用SOAP服务,而是向第三方应用程序提供SOAP服务。非常感谢您澄清我的一些假设:)因此我可能会自己解析SOAP。。。。我们的MFP应用程序是否有更好的选择来公开提供SOAP的服务?我想你又误解了我的问题。我不想使用SOAP服务,而是向第三方应用程序提供SOAP服务。就像我想通过三方curl调用POST-mobilefirstserver-calladapter=Push-payload=SOAP\u适配器一样。是的,我将这个答案标记为正确。我仍然猜你混淆了供给和消费。无论如何,谢谢你:)