【问题标题】:Cognitive Services Response Bad Request认知服务响应错误请求
【发布时间】:2017-11-22 12:32:36
【问题描述】:

我不明白以下代码出了什么问题,我正在使用 MS-Cognitive Services for Face API 并将图像转换为 blob(下面的代码)

var ab = [];
var img = new Image();
img.src = imageUri; // imageUri for FilePath
img.setAttribute('crossOrigin', 'anonymous');
var canvas = document.createElement("canvas");
canvas.width = $(window).width();
canvas.height = $(window).height();
var ctx = canvas.getContext("2d");
ctx.drawImage(img, 0, 0);
var dataURL = canvas.toDataURL("image/jpeg");
alert(dataURL.replace(/^data:image\/(png|jpg);base64,/, ""));

var BASE64_MARKER = ';base64,';
var parts = dataURL.split(BASE64_MARKER);
var contentType = parts[0].split(':')[1];
var raw = window.atob(parts[1]);
var rawLength = raw.length;
var uInt8Array = new Uint8Array(rawLength);
    for (var i = 0; i < rawLength; ++i) {
        uInt8Array[i] = raw.charCodeAt(i);
    }   var bb = new Blob([new Uint8Array(ab)]); 

并按照代码进行人脸检测的 Ajax 调用(MS 认知服务)

var params = {
    "returnFaceId": "true",
    "returnFaceLandmarks": "false",
    "returnFaceAttributes": "{string}",
};

$.ajax({
    url: "https://australiaeast.api.cognitive.microsoft.com/face/v1.0/detect?" + $.param(params),
    beforeSend: function (xhrObj) {
        xhrObj.setRequestHeader("Content-Type", "application/octet-stream");
        xhrObj.setRequestHeader("Ocp-Apim-Subscription-Key", "KEY_GOES_HERE");
    },
    type: "POST",
    data: bb,
    processData: false,
})
    .done(function (data) {
        alert("Response Done::" +data);
    })
    .fail(function (jqXHR, textStatus, errorThrown) {
        alert(" Status:: " + jqXHR.status + "  ResponseText is:: " + jqXHR.statusText + "");
    });

我收到 400-Bad Request 的响应。我不明白我在哪里犯错。?顺便说一句,整个事情都具有相同的功能。 任何人都可以帮我吗?谢谢。

【问题讨论】:

  • 我想我在生成 Blob 时遇到了一些问题。
  • 是的。如果不使用“fetch”,我从来没有设法让它工作
  • 除了“获取”还有其他选择吗??

标签: javascript jquery html ajax microsoft-cognitive


【解决方案1】:

解决了这个问题

var params = {
    // Request parameters
    "returnFaceId": "true",
    "returnFaceLandmarks": "false",
    "returnFaceAttributes": "age,gender,headPose,smile,facialHair,glasses,emotion,hair,makeup,occlusion,accessories,blur,exposure,noise",
};

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-13
    • 1970-01-01
    • 1970-01-01
    • 2019-07-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多