小编Ear*_*rlD的帖子

Amazon CloudFront版本控制'index.html'

我在S3和CloudFront中部署了一个AngularJS应用程序.我通过Grunt和Jenkins构建的过程包括一个FileRev步骤,用于唯一地命名我的脚本和供应商JS文件的每个新版本.最后,FileRev还更新了我的'index.html'页面标签,以引用我的脚本和供应商文件的最新版本版本.

一切都很好,除了......

如何让CloudFront立即使我的所有边缘位置的'index.html'无效,而不是以编程方式在每个版本上创建新的失效?

谢谢!

amazon-s3 amazon-cloudfront

13
推荐指数
1
解决办法
2052
查看次数

非常简单的AngularJS $ http POST结果为'400(错误请求)'和'无效的HTTP状态代码400'

我在Azure中托管了一个非常简单的.NET Web API,它有两个非常简单的方法:

[EnableCors(origins: "http://simpleapiearl.azurewebsites.net", headers: "*", methods: "*")]
public class EnvelopesController : ApiController {
    // GET: api/Envelopes
    public IEnumerable<string> Get() {
        return new string[] { "value1", "value2" };
    }

    // POST: api/Envelopes
    public string Post([FromBody]Envelope env) {
        return "rval: " + env + " (and my addition to env)";
    }
}
Run Code Online (Sandbox Code Playgroud)

我创建了一个简单的插件来调用这些方法.在我的AngularJS代码中,我正在进行两个非常简单的$ http调用.GET工作正常.然而,POST总是返回"400(错误请求)",紧接着在我的WebStorm控制台中"XMLHttpRequestion无法加载......无效的HTTP状态代码400".

任何和所有建议赞赏!

编辑!!

您好,感谢非常快速的回复.我刚刚意识到我忘了添加一些非常相关的细节.

我的POST方法的参数是我称之为Envelope的对象,它包含两个属性:listingId (int)和Description (string).当我添加urlencoded的Content-Type标头,并'{"listingId":1234, "Description":"some description"}'作为我的POST数据传递时,我在服务器上的POST方法中的env参数是NULL(也就是说,它似乎无法解析我提供的JSON).对不起,这是原始帖子中省略的.

javascript azure angularjs

10
推荐指数
1
解决办法
4万
查看次数