试图从 ajax 请求构建 http 适配器

Posted

技术标签:

【中文标题】试图从 ajax 请求构建 http 适配器【英文标题】:trying to build http adapter from ajax request 【发布时间】:2017-07-09 09:22:28 【问题描述】:

我正在尝试使用令牌授权表单 ajax 请求构建 http 适配器,但收到 401 错误

状态代码:强文本 401未经授权 缺少授权

$.ajax(
           type: "POST",   
           url: "https://abcd",
           data: JSON.stringify( "template": 1 ),
           headers:  "Authorization": "xxxx", "Accept": "application/json", 
"Content-Type": "application/json" 
);

function My_adapter() 
   path = '/xxx';
   var input = 
       method : 'post',
       path : path,
       returnedContentType : 'json',
      headers: 'Content-type':'application/json', 
'Accept':'application/json', 'Authorization':'Token XXXXX',             
       parameters: JSON.stringify( "template": 1 ),            
   ;
   var result=WL.Server.invokeHttp(input);  
   return result;

tnx 为您提供帮助, 萨哈尔

【问题讨论】:

什么版本的多功能一体机? 嗨,多功能一体机版本是 7.0.0.1 【参考方案1】:

您看到的错误消息是预期的。您发布的客户端代码显示您正试图在 MFP 客户端 SDK(jQuery ajax 调用)之外调用 MFP 服务器。此调用未将所有需要的信息传送到服务器,因此服务器会发送“missing_authorization”消息。

如果您希望调用适配器,请使用 MFP 客户端 SDK 提供的 WLResourceRequest API。这负责处理与 MFP 服务器的身份验证握手。有关 API 使用的更多详细信息here。

【讨论】:

嗨 vivin,我们已经有与其他 URL 相同的适配器并且它工作正常。它的行为非常奇怪,两者之间有一个区别,那就是需要身份验证 身份验证是关键。您需要 MFP SDK 来处理身份验证流程。 在哪里可以找到它的指南? 使用 WLResourceRequest API:mobilefirstplatform.ibmcloud.com/tutorials/en/foundation/8.0/…

以上是关于试图从 ajax 请求构建 http 适配器的主要内容,如果未能解决你的问题,请参考以下文章

Worklight 5.0.6:Ajax 请求异常:向数据适配器发送大数据时表单太大

从 Worklight 获取 HTTP 适配器的响应

无法从 Worklight Liberty 服务器中的 HTTP 适配器调用 java 类

MFP 7.0 HTTP 适配器返回额外数据

如何中止Ember Data发出的HTTP请求?

第三十一篇iOS 9版本适配