使用curl向api端点发送ajax请求以获取数据?

时间:2017-10-20 00:58:59

标签: javascript jquery ajax curl salesforce-einstein

我正在尝试使用一个文件,在它上传之后,然后使用该文件创建一个AJAX请求并将其发送到爱因斯坦视觉(预测)api端点以获取照片的结果。我通过API文档获得了以下curl命令,并且在转换时遇到了一些麻烦。

curl命令:

curl -X POST -H "Authorization: Bearer <Token>" -H "Cache-Control: no-cache" -H "Content-Type: multipart/form-data" -F "sampleContent=@generalimage.jpg" -F "modelId=GeneralImageClassifier" https://api.einstein.ai/v2/vision/predict

ajax代码:(我需要添加模型id的表单数据和图像的samplecontent)

var uploadBtn = $('#upload-button');
uploadBtn.change(function(event) {
    event.preventDefault();
    var file = event.target.files[0].name;
    var formData = new FormData();
    formData['sampleContent'] = file;
    formData['modelId'] = 'GeneralImageClassifier';

    $.ajax({
        url: 'https://api.einstein.ai/v2/vision/predict',
        method: 'POST',
        processData: false,
        contentType: false,
        data: ???,
        headers: {
            'Authorization': 'Bearer <Token>',
            'Cache-Control': 'no-cache',
            'Content-Type': 'multipart/form-data'
        }
    });
});

0 个答案:

没有答案