尝试使用 LUA 中的 curl 向 slack 发送消息时,此脚本出现错误。谢谢你的帮助。
cmd="c:\\curl\\bin\\curl.exe -X POST -H "Content-type: application/json" -d "{\"text\":\"Hello\"}" https://hooks.slack.com/services/xxxxxxxxxx/xxxxxxxxx/xxxxxxxxxxxxx"
LUA_ERROR:[string "cmd="c:\curl\bin\curl.exe -X POST -H "内容类型:应用程序..."]:1: =' expected near
-'
回答1
您的脚本充满了语法错误,因为您没有费心转义包含 cURL 命令参数的双引号。最简单的解决方案是在这里只使用长字符串,它不需要您在不将 \"
解释为 "
的情况下转义双引号,从而保留您的内部转义:
cmd=[[c:\curl\bin\curl.exe -X POST -H "Content-type: application/json" -d "{\"text\":\"Hello\"}" https://hooks.slack.com/services/xxxxxxxxxx/xxxxxxxxx/xxxxxxxxxxxxx]]
或者,您可以使用单引号,要求您转义所有反斜杠:
cmd='c:\\curl\\bin\\curl.exe -X POST -H "Content-type: application/json" -d "{\\"text\\":\\"Hello\\"}" https://hooks.slack.com/services/xxxxxxxxxx/xxxxxxxxx/xxxxxxxxxxxxx'