我使用 Kaa 沙箱发送通知。
我必须在窗口终端上运行这些代码:
curl -v -S -u devuser:devuser123 -F 'notification={"applicationId":"3","schemaId":"4","topicId":"1","type":"USER"}; type=application/json' -F [email protected] /cdn-cgi/l/email-protection "http://192.168.10.49:8080/kaaAdmin/rest/api/sendNotification" | python -mjson.tool
并且内容Json文件是根据schemaId:
{"message" : "Hello world!"}
Hint:我的命令和json文件是同一个文件夹!
当我在 Windows 终端上运行 curl 命令时出现错误(HTTP/1.1 400 所需的请求部分“通知”不存在)
这是运行时的完整信息并给出结果:
C:\Users\866\mycurl>curl -v -S -u devuser:devuser123 -F 'notification={"applicationId":"3","schemaId":"4","topicId":"1","type":"USER"}; type=application/json' -F [email protected] /cdn-cgi/l/email-protection "http://192.168.10.49:8080/kaaAdmin/rest/api/sendNotification" | python -mjson.tool
* timeout on name lookup is not supported
* getaddrinfo(3) failed for type=application:80
* Couldn't resolve host 'type=application'
* Closing connection 0
curl: (6) Couldn't resolve host 'type=application'
* timeout on name lookup is not supported
* Trying 192.168.10.49...
* TCP_NODELAY set
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0* Connected to 192.168.10.49 (192.168.10.49) port 8080 (#1)
* Server auth using Basic with user 'devuser'
> POST /kaaAdmin/rest/api/sendNotification HTTP/1.1
> Host: 192.168.10.49:8080
> Authorization: Basic ZGV2dXNlcjpkZXZ1c2VyMTIz
> User-Agent: curl/7.53.1
> Accept: */*
> Content-Length: 394
> Expect: 100-continue
> Content-Type: multipart/form-data; boundary=------------------------96aee635439b1f3c
>
< HTTP/1.1 100 Continue
} [312 bytes data]
< HTTP/1.1 400 Required request part 'notification' is not present
< Date: Tue, 18 Jul 2017 13:20:44 GMT
< Set-Cookie: JSESSIONID=19eircy8uykvr1f0lnmj4fah7r;Path=/
< Content-Type: text/html; charset=ISO-8859-1
< Cache-Control: must-revalidate,no-cache,no-store
< Content-Length: 402
< Server: Jetty(9.2.2.v20140723)
* HTTP error before end of send, stop sending
<
{ [402 bytes data]
100 796 100 402 100 394 1288 1262 --:--:-- --:--:-- --:--:-- 1430
* Closing connection 1
Expecting value: line 1 column 1 (char 0)
请指导我解决这个问题。
我找到了正确的解决方案。
我尝试使用 ssh 命令连接 kaa 服务器。
1-您可以通过以下方式访问 SSH:
$ ssh [email protected] /cdn-cgi/l/email-protection -p 2222
2-然后输入:
用户名: kaa
密码: kaa
新旧版本中调用 REST API 的发送通知命令几乎没有变化,就解决了这个问题。
3-该命令已更改:
curl -v -S -u devuser:devuser123 -X POST --header 'Content-Type:multipart/form-data' -F'notification={"applicationId":"3","schemaId":"65564","topicId":"1","type":"USER"};type=applicatin/json' --header 'Accept:application/json' 'http://localhost:8080/kaaAdmin/rest/api/sendNotification' -F [email protected] /cdn-cgi/l/email-protection
然后正确响应的结果:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)