我有一个用 Core 2 编写的 Web API,它返回一个 FileContentResult。
您需要在标头中使用 Auth Token 执行 GET 才能使其正常工作。如果您使用邮递员进行尝试,该文件可以很好地呈现,并且在 MVC 视图中也可以很好地呈现。
现在我们有一个外部 Salesforce 系统尝试使用 API,但由于 APEX 语言的限制,他们必须使用 Javascript 将令牌注入 GET 方法。
示例代码:
$(document).ready(function() {
$.ajax({
type: 'GET',
url: 'https://file-store.com/document/{! docId}',
headers: {
'Authorization': 'Bearer {! oauthToken}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
}).done(function (data) {
console.log(data);
});
});
这似乎起作用,因为返回的“数据”包含一个文件 - 或者至少是一个看起来像序列化文件的曲线数组。
但是,似乎没有办法让 web 视图呈现这个。
我尝试使用嵌入
var object = '<embed scr="' + data + '" />';
或使用 iframe
$('#iFrame').html(data);
或者
$('#iFrame').html(object);
还有很多其他的事情,但到目前为止都没有成功。
我知道在 MVC 中这很简单,但是使用 javascript 是否可行?
我们确实成功接收了文件,并且我们确实在内存中有数据,我只需要在浏览器上呈现它的方法。
非常欢迎任何建议