尽管curl代码中使用单引号引起错误

时间:2019-03-11 13:09:01

标签: curl

我正在尝试基于以下页面代码的以下CURL代码: https://tokbox.com/developer/guides/insights/

它总是在我的Bash终端中出现以下错误:

{"errors":[{"message":"Unexpected )","locations":[{"line":1,"column":20}]}]}

(ID和令牌在下面的代码中已更改)

curl -X POST \
-H "Content-Type: application/json" \
-H "X-OPENTOK-AUTH:T1==QmY3JlYXRlX3RpbWU9MTU1MjMwNjIzOSZyb2xlPXB1Ymxpc2hlciZub25jZT0xNTUyMzA2MjM5LjE5MjU2NjQ2NTI0NzMmaW5pdGlhbF9sYXlvdXRfY2xhc3NfbGlzdD0=" \
-d '{"query":"{project(projectId:'${123456789}'){projectData(start:\"'1549887039'\"){resources{usage{streamedSubscribedMinutes}}}}}"}' \
'https://insights.example.com/graphql'

请问出什么问题了。我尝试使用单引号和双引号将反斜杠屏蔽,但没有结果。

3 个答案:

答案 0 :(得分:0)

我可以看到您选择了错误的网址。正确的应该是https://insights.opentok.com/graphql(而不是https://insights.example.com/graphql

这里是逃脱的卷发:

curl -X POST \
  https://insights.opentok.com/graphql \
  -H 'Content-Type: application/json' \
  -H 'X-OPENTOK-AUTH: T1==QmY3JlYXRlX3RpbWU9MTU1MjMwNjIzOSZyb2xlPXB1Ymxpc2hlciZub25jZT0xNTUyMzA2MjM5LjE5MjU2NjQ2NTI0NzMmaW5pdGlhbF9sYXlvdXRfY2xhc3NfbGlzdD0=' \
  -d '{"query": "{project(projectId:123456789){projectData(start:\"1549887039\"){resources{usage{streamedSubscribedMinutes}}}}}"}'

您可以使用Postman(https://www.getpostman.com/)创建curl请求。

https://blog.getpostman.com/2016/02/03/curl-and-postman-work-wonderfully-together/

祝你好运!

答案 1 :(得分:0)

Pamela,您的代码对我来说似乎是正确的。请按照其网站上的说明进行操作。

YOUR_OT_API_KEY= 123456               
YOUR_OT_JWT= jwttoken.....
OT_START_DATE=$(($(date +%s)-864000))    
OT_DATA='{"query":"{project(projectId:'${YOUR_OT_API_KEY}'){projectData(start:\"'$OT_START_DATE'\"){resources{usage{streamedSubscribedMinutes}}}}}"}'

curl -X POST \
-H "Content-Type: application/json" \
-H "X-OPENTOK-AUTH:$YOUR_OT_JWT" \
-d $OT_DATA \
'https://insights.opentok.com/graphql'

作为替代方案,您可以尝试Agora,它提供了比tokbox更好的支持,并且每月有将近10,000分钟的免费时间。 Tokbox的生产成本很高。

https://www.agora.io/en/videocall/

答案 2 :(得分:0)

Opentok质量检查人员在这里。

Pamela,您必须从POST数据中删除单引号('):

{{1}}

因为第一个匹配 -d

之后的匹配