NetSuite:从在线表单调用RESTlet时出现跨域问题

时间:2019-06-19 11:23:16

标签: javascript netsuite restlet suitescript restlet-2.0

我有一个在线表格来收集用户信息。 我想以这种形式致电NetSuite以获取数据。 我用标头上的“授权”建立了对RESTlet的调用,使用邮递员测试了此脚本,它可以正常工作 但是,当我在Online表单上执行相同的操作时(客户端脚本,使用有效标题将RESTlet调用https.get()包含“ Authorization”),将返回错误“错误代码:INVALID_LOGIN_ATTEMPT”(无意义错误)。我花了2天的时间研究原因,发现问题是跨域的(我尝试使用$ .ajax调用RESTlet并查找问题)。

现在,我想知道如何在通过在线表单致电时解决“跨域”问题。

调用NetSuite从在线表单获取数据的最佳解决方案是什么?

谢谢

1 个答案:

答案 0 :(得分:0)

即使您能够解决CORS限制,如果从客户端代码调用Restlet也是一个严重的安全问题,因为您会将授权令牌暴露给最终用户。

一种好的方法是使用无服务器功能(例如Google Cloud Function,AWS Lambda等)等中间件“代理” Restlet。这样既可以解决CORS问题,又可以确保您的凭据安全。