当我使用AngularJS运行$ http POST请求时,我收到404错误

时间:2017-02-06 20:38:04

标签: javascript angularjs http post http-status-code-404

我正在构建一个应用程序,允许用户在投注池中下注。当用户点击按钮时,控制器中的功能被执行,但是没有发出请求并返回404错误,任何建议将不胜感激。

function placeBet(bet) {
console.log('in place bet');

$http.post('https://colossusdevtest.herokuapp.com/api/tickets.json', {
  'id': 550900,
  'status': 'PLACED',
  'customer_payout': '0.0',
  'stake': bet,
  'currency': 'GBP',
  'lines': 24,
  'amount_owned_customer': '1.0',
  'cost': '12.0',
  'created_at': '2015-07-23T17:00:10.000Z',
  'offer_amount': '0.0',
  'customer_winnings': '0.0',
  'offers_accepted': '0.0',
  'merchant_ref': '15ac9a2e-d4a8-4652-a60c-2b57d1afd92b',
  'pool': {
    'id': 171,
    'name': 'Mixed 4',
    'type_code': 'POINT_MARGIN',
    'headline_prize': '4996.06',
    'status': 'OPEN',
    'sched_start': '2015-07-28T11:00:00.000Z',
    'sched_next': '2015-07-28T11:00:00.000Z',
    'currency': 'GBP',
    'leg_num': 4,
    'sport_code': 'RUGBY',
    'has_offers': false
  }
}).then(() => {
  console.log('information posted');
});
}

$scope.placeBet = placeBet;

Problem

2 个答案:

答案 0 :(得分:0)

我无法看到您的图片说明。

您的邮局调用可能有多少选择。     - 如果你有正确的网址 - 你用json整理你听起来不太好     - 确保您拥有正确的数据     - 您可能需要http.post的配置部分。 click here     - 之后添加catch块以捕获错误     - 检查它是否是CORS问题

首先确保您可以使用Postman插件连接到您的服务器,然后以角度http.post打包您的电话。

答案 1 :(得分:0)

您是否尝试将代码更改为:

return $http({
  method: 'POST',
  url: '/someUrl',
  data: bet
}).then(function successCallback(response) {
    console.log(response);
}, function errorCallback(response) {
});

请确保您的请求不跨域请求。