加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

AngularJS发送OPTIONS请求而不是POST

发布时间:2020-12-17 07:37:22 所属栏目:安全 来源:网络整理
导读:我试图将图片上传到我的S3桶.我使用AngularJS v1.2.13. 当我使用他们的文档中显示的简单情况(提交表单与动作标签)一切正常.但是,如果我想这样做,Angular的方式用ng-click Angular发送OPTIONS请求而不是POST请求. 以下是服务代码,它首先去服务器获取签名(我知
我试图将图片上传到我的S3桶.我使用AngularJS v1.2.13.
当我使用他们的文档中显示的简单情况(提交表单与动作标签)一切正常.但是,如果我想这样做,Angular的方式用ng-click Angular发送OPTIONS请求而不是POST请求.

以下是服务代码,它首先去服务器获取签名(我知道那部分是好的)然后尝试POST一切.

myServices.factory('s3',function($http) {
    var service = {};

    service.upload = function(fileName) {

        return $http(
            {
                method:"POST",url: "sign",data: { "fileName": fileName }
            }
        ).then(
            function(result) {
                // success
                //resolve the promise as the data
                var data = result.data;
                var url = "https://" + data.bucket + ".s3.amazonaws.com/";

                return $http.post(url,{
                    "key": data.key,"AWSAccessKeyId": data.awsKey,"acl": data.acl,"policy": data.policy,"signature": data.signature,"Content-Type": "image/jpeg","success_action_redirect": "http://localhost:3000/s3Uploaded"
            }).then(
            function(response) {
                // success
                console.log("s3.upload,success: ");
                console.log(response);
            },function(response) { 
                // failed
                console.log("s3.Upload,fail: ");
                console.log(response);
            }
        );

    },function(response) { 
            // failed
            console.log("s3.sign,fail: ");
            console.log(response);
        }
    );
};

return service;
});

我究竟做错了什么?

我不知道这些资源是否会帮助你,但这听起来像是同样的问题:

HTTP POST turns into OPTIONS

OPTIONS preflight call preceding a $http.post request

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读