使用令牌从Netsuite调用外部REST URL时出错

时间:2018-12-02 00:21:00

标签: netsuite suitescript suitescript2.0

从netsuite调用第三方REST GET URL时,我没有得到有效的json响应。第三方api使用的是oAuth2,因此我在UserEvent脚本中像这样传递了承载令牌。有人可以告诉我这段代码有什么问题。下面是代码段。

var sURL = "REST URL";

var header = { "Authorization": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjb21wYW55X2lkIjoiYXBpdXNlck1ITVUiLCJ1c2VyX25hbWUiOiJhcGl1c2VyIiwic2NvcGUiOlsiYWNjdF9wYXlhYmxlIl0sImV4cCI6MTU0MzcxOTY3NCwiYXV0aG9yaXRpZXMiOlsiUk9MRV9VU0VSIl0sImp0aSI6IjU4MjA2YTRkLTRhYTgtNDNjNy1iZTY2LWM2YTQ1NTg0YTY2ZSIsImNsaWVudF9pZCI6Im5ldHN1aXRlLWNsaWVudCJ9.dPuwIpzZW3VrhkJnF_HaaNe8t4AMQ84UgMY5ZOK6j7g", 
                        "Content-Length": "0", 
                        "Content-Type": "application/json" };

        var request = https.get({
            url: sURL,
            headers: header
        });

        log.debug('req',request);

在调试器中获取以下输出:

{“ type”:“ http.ClientResponse”,“ code”:406,“ headers”:{“ X-Content-Type-Options”:“ nosniff”,“ Pragma”:“ no-cache”,“日期”:“星期六,2018年12月1日23:46:46 GMT”,“通过”:“ 1.1 mono00001.svale.netledger.com”,“ X-Frame-Options”:“ DENY”,“ Cache-Control”: “没有缓存,没有存储,最大使用期限= 0,必须重新验证”,“ Set-Cookie”:“ JSESSIONID = 4E42866C0A8D2D8504581B74C8D6FC1C; Path = /; HttpOnly”,“ Expires”:“ 0”,“ Content-Length” “:” 806“,” X-XSS-Protection“:” 1; mode = block“,” Content-Language“:” en“,” Content-Type“:” text / html; charset = utf-8“} ,“正文”:“ HTTP状态406 –不可接受” h1 {font-family:Tahoma,Arial,sans-serif; color:white; background-color:#525D76; font-size:22px;} h2 {font-family:Tahoma ,Arial,sans-serif;颜色:白色;背景颜色:#525D76;字体大小:16px;} h3 {font-family:Tahoma,Arial,sans-serif;颜色:白色;背景颜色:#525D76; font-size:14px;} body {font-family:Tahoma,Arial,sans-serif; color:black; background-color:white;} b {font-family:Tahoma,Arial,sans-serif; color:white;背景颜色:#525D76;} p {font-family:Tahoma,A rial,sans-serif; background:white; color:black; font-size:12px;} a {color:black;} a.name {color:black;} .line {height:1px; background-color:#525D76 ; border:none;}

HTTP状态406 –不可接受

” }

2 个答案:

答案 0 :(得分:2)

NetSuite不支持oauth2。

答案 1 :(得分:0)

我遇到了同样的问题,但是这个标题解决了问题

var header = {“ Accept”:“ * / *”, “ Content-Type”:“ application / json”, “授权”:accessToken }