Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我可以将这个C#http POST请求转换成JavaScript吗?_Javascript - Fatal编程技术网

我可以将这个C#http POST请求转换成JavaScript吗?

我可以将这个C#http POST请求转换成JavaScript吗?,javascript,Javascript,我正在尝试将一些C#转换为JavaScript,因为我正在构建一个JavaScript应用程序来实现计算机视觉 C#“快速启动”就在这里 我想对端点做的是通过HTTP POST向其发送一个图像 到目前为止,我的代码是: <form enctype="multipart/form-data"> <input name="file" type="file" /> <input type="button" value="Upload" />

我正在尝试将一些C#转换为JavaScript,因为我正在构建一个JavaScript应用程序来实现计算机视觉

C#“快速启动”就在这里

我想对端点做的是通过HTTP POST向其发送一个图像

到目前为止,我的代码是:

  <form enctype="multipart/form-data">
    <input name="file" type="file" />
    <input type="button" value="Upload" />
  </form>

  <script src="https://code.jquery.com/jquery-3.4.1.min.js"
    integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>

  <script>
    $(function () {

    });

    $(':button').on('click', function () {

      var uriBase = "https://westcentralus.api.cognitive.microsoft.com/vision/v1.0";
      var authorizationToken = "-";
      var requestParameters = "visualFeatures=Categories,Description,Color";

      var computerVisionEndpoint = uriBase + "?" + requestParameters;

      $.ajax({
        url: computerVisionEndpoint,
        type: 'POST',

        beforeSend: function (request) {
          request.setRequestHeader("Content-Type", "application/octet-stream");
          request.setRequestHeader("Ocp-Apim-Subscription-Key", authorizationToken);
        },

        data: new FormData($('form')[0]),
      }).done(function (data) {
        console.log("DONE!");
        debugger;
      }).fail(function (xhr, status, error) {
        console.log("FAIL!");
        debugger;
      });
    });

  </script>

$(函数(){
});
$(':button')。在('click',函数(){
变量uriBase=”https://westcentralus.api.cognitive.microsoft.com/vision/v1.0";
var authorizationToken=“-”;
var requestParameters=“visualFeatures=类别、描述、颜色”;
var computerVisionEndpoint=uriBase+“?”+请求参数;
$.ajax({
url:computerVisionEndpoint,
键入:“POST”,
发送前:功能(请求){
setRequestHeader(“内容类型”、“应用程序/八位字节流”);
setRequestHeader(“Ocp Apim订阅密钥”,authorizationToken);
},
数据:新FormData($('form')[0]),
}).完成(功能(数据){
console.log(“完成!”);
调试器;
}).失败(功能(xhr、状态、错误){
日志(“失败!”);
调试器;
});
});

这里的问题是,我得到了错误“jquery-3.4.1.min.js:2未捕获类型错误:非法调用”。

您必须将
processData:false
添加到ajax请求中。

尝试将这些选项添加到ajax请求中
mimeTypes:“多部分/表单数据”、contentType:false、cache:false、processData:false