所以我在公司设置了一个基本的电子邮件程序。这是一个REST API GET调用,它有一个像这样的URL。
http://localhost:8080/api/emailer?email=to@person.here&subject=test&body=test
对于body =我想传递HTML电子邮件的HTML。
e.g。
http://localhost:8080/api/emailer?email=to@person.here&subject=test&body=<html><head></head><body>test</body></html>
我试过简单地在那里传递HTML并且该网站引发了错误。
据我所知,这可能是不可能的。我可能需要接受一个文件并在HTML代码中转换它。 API中的代码采用字符串,它不关心html,所以这里有一些关于在URL或RESTful URL中传递某些字符的内容。我是RESTful的新手,所以我一直在阅读,但这个领域似乎缺少细节。
答案 0 :(得分:1)
必须对GET参数进行编码,将参数体中不允许的任何字符(例如?
,&
,=
和空格)替换为百分比标志后跟两个数字(例如%3F
,%26
,%3D
和%20
。幸运的是,在大多数语言中,您不必担心手动执行此操作。
JavaScript有一个名为encodeURIComponent
的函数,您可以这样使用它:encodeURIComponent(html)
。
Python有一个名为urllib.parse
的包,其中包含一个名为quote
的函数,您可以这样使用它:
from urllib.parse import quote
# ...
encoded = quote(html)
其他语言也有类似方法,只需在Google上搜索“&lt; language name&gt; encode URI”。