【发布时间】:2020-10-19 06:21:21
【问题描述】:
我正在尝试使用 SAPUI5 (Jquery / AJAX) 发布方法调用表单识别器 API。我可以使用 RESTAPI 客户端阅读相同的 pdf。从 Javascript 调用 API 时出现以下错误。
问题似乎与 ajax post 方法主体中的数据有关。非常感谢任何建议/帮助。
错误信息:
415 不支持的媒体类型 {"error":{"code":"2018","innerError":{"requestId":"a12dc9f8-b22f-4602-85d8-7330b16593f7"},"message":"内容 解析错误。"}}
Javascript 代码:
onChange: function(oEvent) {
// var that = this;
var reader = new FileReader();
var file = oEvent.getParameter("files")[0];
var raw;
reader.onload = function (e) {
raw = e.target.result;
//alert(raw);
var sUrl2 = "https://formrecognizerforsap.cognitiveservices.azure.com/formrecognizer/v1.0-preview/custom/models/{mymodelid>/analyze";
jQuery.ajax({
type: "POST",
url: sUrl2,
context: this,
crossDomain: true,
data: raw,
beforeSend: function (xhr) {
xhr.setRequestHeader("content-type", "application/pdf");
xhr.setRequestHeader("ocp-apim-subscription-key", "my-subscription id");
},
error: function (jqXHR, textStatus, errorThrown) {
sap.m.MessageToast.show(errorThrown);
},
success: function (oData, status, jqXHR) {
sap.m.MessageToast.show(status);
}
});
};
reader.onerror = function (e) {
sap.m.MessageToast.show("error");
};
reader.readAsDataURL(file);
},
【问题讨论】:
-
我可以知道原始(数据)格式是怎样的吗?
-
原始输出类似于 "data:application/pdf;base64,JVBERi0xLjMNCiXi48/TDQolUlN...." 。我尝试使用“数据:应用程序/pdf;base64,JVBERi 整个字符串以及删除数据:应用程序/pdf;base64 来发布。在这两种情况下,错误都是相同的。此外,我可以使用原始数据生成 PDF “Base64 转 PDF”网络链接。
标签: sapui5 microsoft-cognitive form-recognizer