卷曲不正确的身体

问题描述 投票:0回答:1

问题在于解析curl命令中的正文

我使用网络应用程序执行帖子请求,并且成功了,我得到了帖子的curl命令,如下所示

curl -k -u "redacted:redacted"  --ntlm  "https://redacted/certsrv/certfnsh.asp" --header "Mode: newreq"  --header "Content-Type: application/x-www-form-urlencoded"  --data-urlencode "Mode=newreq"  --data-urlencode "CertRequest=-----BEGIN NEW CERTIFICATE REQUEST-----redacted-----END NEW CERTIFICATE REQUEST-----"  --data-urlencode "CertAttrib=CertificateTemplate:CertificatElasticSearch"  --data-urlencode "FriendlyType=Saved-Request Certificate"  --data-urlencode "TargetStoreFlags=0"  --data-urlencode "SaveCert=yes"
,这工作得很好,但是当我想要另一个CertAttrib时,如下所示enter image description here,curl命令没有不起作用,所以我怎么能把
CertAttrib: CertificateTemplate:Copie du modèle « Serveur Web »
作为主体,我相信问题出在特殊字符上,即使尝试使用邮递员也不起作用,enter image description here 这可以工作,但将其更改为所需的 CertAttrib 不起作用

curl postman libcurl
1个回答
0
投票

看起来您正在尝试创建多部分请求,其中生成的curl未使用多部分形式。 使用以下示例

curl -X POST --url https://httpbin.org/post \
   --form Mode=newreq \
   --form 'CertRequest=-----BEGIN NEW CERTIFICATE REQUEST-----redacted--- END NEW CERTIFICATE REQUEST-----' \
   --form 'CertAttrib=<attributes>'

编写卷曲请求有点困难。您可以使用 https://marketplace.visualstudio.com/items?itemName=ShivaPrasanth.dothttp-code&ssr=false

通过以下代码轻松发出多部分请求。

以下内容很容易阅读。


POST "https://httpbin.org/post"
files(
    
    ("Mode", "newreq"),
    ("CertRequest", "-----BEGIN NEW CERTIFICATE REQUEST-----redacted--- END NEW CERTIFICATE REQUEST-----"),
    ("CertAttrib", "<attributes>")

)

© www.soinside.com 2019 - 2024. All rights reserved.