AngularJS:将照片作为多部分表单数据上传和发布并获得响应



我想上传一张图片并将其发布到我的服务器,该服务器应该将图像进一步发布到某个 API 并获得其响应。

我可能会将视图与以下内容一起使用:

<form ng-submit="updatePhoto(myphoto)"> 
    <p>Choose Photo:</p>
    <input type="file" ng-model="myphoto">
    <input type="submit" value="Send">
</form>

然后在控制器中,该函数将具有类似以下内容:

$http({
        method: 'POST',
        url: 'myAPIserver.php/',
        data: "myPhoto=" + photo,
        headers: {'Content-Type': 'multipart/form-data'}
});

但这是不正确的,我不确定如何做到这一点。问题是我首先将这张照片发送到我的 PHP 代理,然后从那里我使用 curl 发出直接的 API 请求。

我希望我足够清楚。任何建议表示赞赏,谢谢

我设法在我在这里得到的自定义指令的帮助下完成了这一点。如果要访问文件,则需要自定义文件上传指令(ngModel 不起作用,有关详细信息,请参阅此处)。

使用第一个链接:

<form ng-submit="updateSth()" name="uploadForm" enctype="multipart/form-data">
    <input name="file" type="file" id="file" file-model="fileToUpload" />
    <input name="somethingINeed" type="submit" value="Upload" />
</form> 

您现在可以使用$scope.fileToUpload访问上传的文件,这使一切变得更容易。我从第一个链接上给出的服务中提取了该功能,并没有将其用作服务,因为它更适合我......

最新更新