gpt4 book ai didi

linux - 带有 Linux CURL 的 SOAP MTOM 附件

转载 作者:IT王子 更新时间:2023-10-29 00:42:12 36 4
gpt4 key购买 nike

到目前为止,我一直在使用简单的 base64 编码通过 SOAP 发送附件并将它们内联放置——所有这些都是通过 CURL 完成的。现在我有一个新请求,需要将附件作为 MTOM 附件发送,问题是:是否可以使用 linux curl?可能我需要 multipart/related 或类似的内容类型。

我知道使用 JAX-WS 是可能的,但为了做到这一点,我们必须开发一个新的客户端,这实际上对我们来说并不是最佳选择。

请告诉我是否可行,如果可行,请给我任何提示。

最佳答案

您可以将文件内容包含在 base64 编码中并使用 curl post。

举个例子:

  1. 安装 axis2 中的 mtom 示例并为您工作
  2. 构造以下示例 req.xml

$ 猫 req.xml

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:mtom="http://ws.apache.org/axis2/mtomsample/" xmlns:xm="http://www.w3.org/2005/05/xmlmime">
<soap:Header/>
<soap:Body>
<mtom:AttachmentRequest>
<mtom:fileName>one.txt</mtom:fileName>
<mtom:binaryData xm:contentType="application/txt">SSBhbSB0aGUgZ3JlYXRlc3Qu</mtom:binaryData>
</mtom:AttachmentRequest>
</soap:Body>
</soap:Envelope>
  1. 使用 curl 发布请求

$猫req.xml | curl -X POST -H 'Content-type: application/soap+xml' -d @-
http://yourmachine.com:8080/axis2/services/MTOMSample.MTOMSampleSOAP12port_http/

<?xml version='1.0' encoding='UTF-8'?>
<soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope">
<soapenv:Body>
<ns2:AttachmentResponse xmlns:ns2="http://ws.apache.org/axis2/mtomsample/">
File saved succesfully.
</ns2:AttachmentResponse>
</soapenv:Body>
</soapenv:Envelope>

这对你有用吗?

关于linux - 带有 Linux CURL 的 SOAP MTOM 附件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11860028/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com