如何解决为什么当我使用Postman时,SuiteQL POST请求可以工作,但是当我在VS Code终端中对相同的代码进行URL查询时,它返回“ INVALID_LOGIN”
我正在尝试使用SuiteQL查询工作簿中的客户端实现,但是我很难使它在VS Code中工作。我从SuiteTalk工具下载页面下载了Postman环境模板和馆藏档案,然后发送了测试请求。它返回了成功的JSON响应。然后,我尝试在VS Code终端中使用cURL,然后通过node-fetch,然后使用一个称为netsuite-rest的npm库发送相同的示例请求。所有这些都返回401'INVALID_LOGIN'。为什么当我使用Postman时它能正常工作,但在其他地方却没有?这是我的cURL请求的示例:
curl --location --request POST 'https://<ACCOUNT_ID>.suitetalk.api.netsuite.com/services/rest/query/v1/suiteql?limit=5' \
--header 'prefer: transient' \
--header 'Content-Type: application/json' \
--header 'Authorization: OAuth realm="<ACCOUNT_ID>",oauth_consumer_key="<CONSUMER_KEY>",oauth_token="<TOKEN>",oauth_signature_method="HMAC-SHA256",oauth_timestamp="<TIMESTAMP>",oauth_nonce="<NONCE>",oauth_version="1.0",oauth_signature="<SIGNATURE>"' \
--header 'Cookie: NS_ROUTING_VERSION=LAGGING' \
--data-raw '{
"q": "SELECT id,companyName,email,dateCreated FROM customer WHERE dateCreated >= '\''01/01/2019'\'' AND dateCreated < '\''01/01/2020'\''"
}'
解决方法
我看到这是一个旧线程,但是我自己才刚刚开始使用 NetSuite 和 Postman。对我来说,当您获得访问令牌时,netsuite Postman 查询将正常工作,并且这将在短时间内工作。最终它会失败,那时您需要使用刷新令牌来获取新的访问令牌。然后,将新的访问令牌作为不记名令牌添加到您的查询授权中 - 然后查询将再次开始工作。
一旦它积极工作,就会有一个神奇的邮递员区域=代码片段。所以点击它,然后注意到有一个包含许多代码库的下拉菜单 - 它将显示您查询的整个代码请求!例如,您可以选择 nodeJS - Axios - 只需复制代码并将其粘贴到您的网页中即可。
您必须记住的一件事是访问令牌将在一段时间后过期,然后您必须用新的访问令牌(使用刷新令牌)替换访问令牌。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。