【问题标题】:Angularjs post request using $resource APIAngularjs 使用 $resource API 发布请求
【发布时间】:2014-05-22 17:18:08
【问题描述】:

我是 angularjs 的初学者,正在尝试登录表单,当用户提交表单时,我正在连接到 REST API url

http://XXX/XXX/index.php/report/login/format/json

在 PostMan rest 客户端中配置 url 时,它可以正常工作。!

但是在angularjs中配置这个url如下图并注册为服务时

 User = $resource('http://xxx/xxx/index.php/report/login/format/json',{},
 {
   query: { method: 'GET', isArray: true },
   create: { method: 'POST' }
  });
User.create({email: user.email,password: user.password});

也试过在服务器端启用 CORS 没用。

我收到 404 错误,但未发布值。

任何帮助将不胜感激

【问题讨论】:

    标签: javascript angularjs http angular-services


    【解决方案1】:

    我遇到了同样的问题。 AngularJS 将帖子的数据放在请求的正文中。有时,服务器找不到这些帖子数据。例如,数据没有出现在 $_POST[] 变量中。 这就是它与 Postman 一起使用的原因。为了验证您的请求中真正发送的内容,我建议您使用 Chrome 工具。 我的解决方案是更改网络服务上数据的获取方式。

    这里是主题:post data - ngResource AngularJS

    【讨论】:

    • 通过查看他的资源,我不明白为什么 Angular 应该将东西放入体内。传递给create 的第一个对象的属性应以查询参数 (.../format/json/?email=...) 的形式出现在请求 URI 中,而不是在正文中。
    • 发出 POST 请求时,参数不会出现在 URI 中。参数仅在您发出 GET 请求时出现在 URI 中。 w3schools.com/tags/ref_httpmethods.asp
    • 对,我忘了它是 POST 而不是 GET。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-09-26
    • 2013-08-16
    • 2017-01-26
    • 2022-12-23
    • 1970-01-01
    相关资源
    最近更新 更多