首页 > 解决方案 > PHP登录槽API(POST请求错误)

问题描述

对于我们学校的项目,我们需要使用 PHP 创建一个图形登录界面。我们从一个自写的 API 接收登录数据,并且我们有以下似乎无法正常工作的代码。我们可以创建一个登录,登录信息存储在 API 后面的数据库中。

这是代码:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0;" />
  <link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css">
  <link rel="stylesheet" type="text/css" media="screen" href="css/stylesheet.css" />
</head>
<body>
<br>
<br>
<br>
<br>
<?php
//Definition der eingegebbenutzernameenen Daten im Formular
$benutzername = $_POST["benutzername"];
$passwort = $_POST["passwort"];

//Defintion der Verbindung
$url = 'http://IP:8080/login/Auth';

//Zusammenfügen der eingegebenen Daten und des XMLs
$xmlstring = "<request>
  <entity name=\"login\">
    <username>" . $benutzername . "</username>
    <password>" . $passwort . "</password>
    <apiUser>" . $benutzername . "</apiUser>
  </entity>
</request>
";

$curl = curl_init($url);

// Set the CURLOPT_POST option to true for POST request
curl_setopt($curl, CURLOPT_POST, true);

// Set the request data as JSON using json_encode function
curl_setopt($curl, CURLOPT_POSTFIELDS, $xmlstring);

// Set custom headers for RapidAPI Auth and Content-Type header
curl_setopt($curl, CURLOPT_HTTPHEADER, [
  'Content-Type: application/xml'
]);

// Execute cURL request with all previous settings
$response = curl_exec($curl);
// Close cURL session
curl_close($curl);
echo $response . PHP_EOL;
?>
</body>
</html>

如果我们尝试登录,我们会收到以下错误消息:

1589983374885405Method Not Allowedorg.springframework.web.HttpRequestMethodNotSupportedExceptionRequest 方法'POST'不支持/登录/Auth1

标签: phpapiauthenticationcurl

解决方案


推荐阅读