我正在从Invoke-RestMethod
进行PUT,并且端点不喜欢我的瑞典字符åäö。
我已经从Windows CMD窗口上下载的curl中进行了验证,并得到了相同的结果错误400。奇怪的是,它可以在我的计算机上从PostMan运行。
可能与utf8和BOM有关吗?试图将其从我的字符串中删除,但没有帮助。
不起作用:
{ "User": {
"email": "xxxxx@domain.com",
"last_name": "Åkesson",
"first_name": "Thomas",
"enabled": true
}
}
工作:
{
"User": {
"email": "xxxxx@domain.com",
"last_name": "akesson",
"first_name": "Thomas",
"enabled": true
}
}
对我来说,问题似乎与Changing PowerShell's default output encoding to UTF-8有关? 还是端点本身可能有一些错误?
答案 0 :(得分:0)
使用此行解决:
$ body = [System.Text.Encoding] :: UTF8.GetBytes($ json)