2016-11-28 62 views
1

希望大家身体健康,精神振奋。使用REST从JET访问Oracle文档云服务Api

我正在尝试使用JET将If文档(带有文件的文件夹)显示到Iframe中。因为我需要从Oracle提供的REST API获得JSON响应。 当我们使用邮递员访问剩下的api时,它返回正确的JSON输出(reference)。

但是,当我试图获得相同的使用JSON Ajax调用我获得以下浏览器的控制台错误:

jQuery的3.1.0.js:9392的XMLHttpRequest无法加载链接。对预检请求的响应不会通过访问控制检查:请求的资源上不存在“访问控制 - 允许来源”标头。因此不允许访问原产地'http://localhost:8383'。

这里是剪断代码:

self.getFolderDetails = function(){ 
    $.ajax({ 
     url: "testurl", 
     type: "GET", 
     userName: "<User name>", 
     password: "<Password>", 
     async: false, 
     crossDomain: true, 
     headers: { 
      'Content-Type' : 'application/json', 
      'Authorization' : 'Basic <Auth Token>' 
     }, 
     success: function (data) { 
      parsedJSON = JSON.parse(JSON.stringify(data)); 
      console.log('Response JSON Data--> ' + JSON.stringify(data)); 
     }, 
     error: function (jqXHR, textStatus, errorThrown) { 
      console.log('Fail Response JSON Data--> ' + JSON.stringify(data)); 
     } 
    }); 
} 

通常在这种情况下,我们对暴露web服务应用CORS过滤器。自开发云团队创建这些服务后,我无法对我做任何更改。

会真的很感谢这方面的帮助。

+0

你的问题解决了吗? – CodeWriter

回答

0

正如你所说,CORS将是这种情况下所必需的,因为它是浏览器的安全功能。这就是说你可以尝试一些工作。

  1. JSONP:这个特性再次依赖于服务器端,所以除非oracle提供它,否则你将无法做到这一点。

  2. 服务器端适配器:您可以在服务器端创建自己的服务,它可以调用oracle服务。你不会有同源问题。

0

Oracle文档云服务不允许其他域使用REST访问信息,直到您使用Doc Cloud Service的管理员操作分配“跨源域”中的域为止。

但是对于本地主机上的测试,您可以在谷歌浏览器中使用一些插件(Allow-Control-Allow-Origin),它允许您在不发生错误的情况下访问相同的插件。

注:我希望你知道约的accessToken刷新令牌,并作用的事情,当你在打开的iFrame应用链接。