使用Curl字符编码向WebApi发布请求问题

使用Curl字符编码向WebApi发布请求问题,curl,unicode,character-encoding,asp.net-web-api,fiddler,Curl,Unicode,Character Encoding,Asp.net Web Api,Fiddler,我们有一个接受POST请求的WebApi服务。POST请求中的信息具有此unicode字符-() 当我们使用Fiddler测试服务时,信息在服务器上被正确接收。但是,当使用curl发布相同信息时,角色会从Specials块更改为此角色- 任何关于为什么会发生这种情况的想法,以及我们如何获得Curl请求来发布正确编码的内容都将不胜感激 编辑: 卷曲请求 curl --trace-ascii debug.txt -d "=VALT ¡ OFFER = '111501383'" http://loca

我们有一个接受POST请求的WebApi服务。POST请求中的信息具有此unicode字符-()

当我们使用Fiddler测试服务时,信息在服务器上被正确接收。但是,当使用curl发布相同信息时,角色会从Specials块更改为此角色-

任何关于为什么会发生这种情况的想法,以及我们如何获得Curl请求来发布正确编码的内容都将不胜感激

编辑: 卷曲请求

curl --trace-ascii debug.txt -d "=VALT ¡ OFFER = '111501383'" http://localhost:25980/api/uni
Api控制器代码

// POST api/<controller>
public string Post([FromBody]string value)
{
// code to process the value
}

这是一个建议。今天晚些时候,我将尝试复制您的问题,并更新答案

内容类型:application/x-www-form-urlencoded;字符集=US-ASCII

此行指定使用
US-ACSII
编码方案对数据进行编码,该编码方案不包括
字符。尝试使用此选项将其设置为
UTF-8

-H "Content-Type: application/x-www-form-urlencoded; charset=utf-8"

请添加发送请求的curl代码。另外,
ApiContoller
代码也会很有帮助。更新了代码问题这是Windows上的curl,对吗?命令行中的非ASCII字符可能很棘手。这是unicode(/U)控制台吗?我同意你的建议,但看起来他们试图发送的字符实际上是ASCII 0xa1,这可能会让人困惑。我猜他们实际上发送的是UTF-8 0xc2a1。
-H "Content-Type: application/x-www-form-urlencoded; charset=utf-8"