【问题标题】:AngularJS + PHP contact form, POST 405 (Not Allowed)AngularJS + PHP 联系表,POST 405(不允许)
【发布时间】:2017-01-20 23:31:47
【问题描述】:

每当我尝试通过联系表单发送消息时,我都会在控制台中收到 POST 405(不允许)。

App.js

$scope.submitData = function() {
   $http({
   url: 'handle.php',
   method: 'POST',
   data: {"name": $scope.name,"email": $scope.email,"message": $scope.message},
   headers: {'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'}
   })
   .success(function() {
     window.alert("Success");
   })
   .error(function() {
     window.alert("Failure");
   })
}

句柄.php

$json = file_get_contents("php://input");
$data = json_decode($json, true);

$to = "myemail@gmail.com";
$name = $data['name'];
$email = $data['email'];
$message = $data['message'];

//to, subject, message, headers, parameters.
mail($to, $name, $email, $message);
?>

联系方式.html

<form action="" method="post" ng-submit="submitData()" ng-controller="contactController">
<p>name:</p>
<input name="name" type="text" ng-model="name">
<p>email:</p>
<input name="email" type="text" ng-model="email">
<p>message:</p>
<textarea name="message" type="text" cols="40" rows="5" ng-model="message"></textarea>
<p><div id="html_element"></div><p>
<input type="submit" id="submit" value="Submit"/>
</form>

我在树莓派上运行一个 nginx 网络服务器。

handle.php 是否正确?

我认为这个错误意味着服务器上没有配置某些东西?我需要配置什么?

我将不胜感激。

【问题讨论】:

    标签: php angularjs nginx


    【解决方案1】:

    我认为您应该安装一个插件来对其他服务器进行 ajax 调用。试试下载这个,可能有帮助: https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi

    安装后,点击插件,添加和url: https://developer.chrome.com/extensions/match_patterns 然后再试一次。

    【讨论】:

      猜你喜欢
      • 2016-05-15
      • 2018-08-28
      • 1970-01-01
      • 2014-05-23
      • 2014-06-22
      • 2015-10-07
      • 2018-12-20
      • 2015-11-16
      • 1970-01-01
      相关资源
      最近更新 更多