【问题标题】:Difference betwen html post and js http.posthtml post和js http.post的区别
【发布时间】:2017-03-18 14:20:36
【问题描述】:

我有一个这样的 html 表单:

<form method="post" action="https://serviceURL/">
  <input name="account"  ng-value="form.account" type="hidden">
  <input name="name"     ng-value="form.name" type="text">
  <button type="submit">Continue</button>
</form>

当我提交表单时,一切都很完美。但是当我尝试在 Angular 服务中执行相同的发布请求时,我得到了

无法加载 https://serviceURL/ 预检响应包含无效的 HTTP 状态代码 504

我的服务功能是这样的

service.callServer =function(){
    var query = "https://serviceURL/";      
    $http.post(query,{account:123,name:'jhon'});

}

我的问题是:这些类型的请求有什么区别? html 操作帖子是否添加了一些 http.post 没有的标头?

【问题讨论】:

标签: javascript html angularjs


【解决方案1】:

这很可能是因为CORS。 Ajax 请求不能提交到您所在的域以外的域,除非服务器设置Access-Control-Allow-Origin 标头指定您的域。为了验证这一点,浏览器首先发送preflight OPTIONS 请求,并且您的服务器似乎对该请求做出了错误响应。这不适用于提交 html 表单,因为它不是 AJAX 请求。

【讨论】:

  • 您的回答对我来说很清楚,感谢您的宝贵时间
猜你喜欢
  • 2015-08-22
  • 1970-01-01
  • 2011-02-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-30
  • 2012-12-24
  • 2018-09-09
相关资源
最近更新 更多