How do I POST form data with UTF-8 encoding by using curl?

北城以北 提交于 2019-12-18 12:14:53

问题


I would like to POST (send) some form data to a webserver using cURL on a terminal-prompt.

This is what I got so far:

curl --data-ascii "content=derinhält&date=asdf" http://myserverurl.com/api/v1/somemethod

The problem is that the umlaute ("äöü") are replaced by "?" when I receive the post request on the server.

I think I need to use an UTF-8 encoding for the POST request.

Does anybody know how I can achieve this?


回答1:


You CAN use UTF-8 in the POST request, all you need is to specify the charset in your request.

You should use this request:

curl -X POST -H "Content-Type: application/x-www-form-urlencoded; charset=utf-8" --data-ascii "content=derinhält&date=asdf" http://myserverurl.com/api/v1/somemethod


来源:https://stackoverflow.com/questions/12489530/how-do-i-post-form-data-with-utf-8-encoding-by-using-curl

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!