Я создаю веб-приложение с Vue.js, в этом веб-приложении люди должны войти в систему, чтобы получить ключ API.Я делаю пост-запрос к своему API с помощью axios, я также отправляю с ним 2 параметра, имя и пароль.Всякий раз, когда я отправляю свою форму, она постоянно выдает мне следующие ошибки:
OPTIONS http://localhost/Leerjaar%203/api/apikey/ 500 (Internal Server Error)
и
Access to XMLHttpRequest at 'http://localhost/Leerjaar%203/api/apikey/' from origin 'http://localhost:8082' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: It does not have HTTP ok status.
Я застрял с этой проблемой уже несколько месяцев, я перестал пытаться несколько месяцев назад, но сегодня ярешил вернуться к нему и попробовать еще раз.Я попытался установить заголовки в моем PHP-файле, но, похоже, он тоже не работает.
Метод, который делает запрос поста:
formSubmit(e) {
e.preventDefault();
let currentObj = this;
axios.post('http://localhost/Leerjaar%203/api/apikey/', {
docent: this.docentNaam,
wachtwoord: this.wachtwoord
})
.then(function (response) {
currentObj.output = response.data;
console.log(response.data);
})
.catch(function (error) {
});
}
Мой PHP API:
<?php
session_start();
include "../errors.inc.php";
include "../credentials.inc.php";
include "../database.inc.php";
$docent = Docent();
if (!isset($_POST["wachtwoord"])) fout(400, "wachtwoord ontbreekt");
if ($_POST["wachtwoord"] !== "test") fout(401, "wachtwoord incorrect");
header('Access-Control-Allow-Origin: http://http://localhost:8081/', false);
header("Access-Control-Allow-Headers: {$_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']}");
header('content-type: application/json; charset=utf-8');
echo '{"apikey":"'.md5(md5($docent)).'"}';
Моя форма:
<form @submit="formSubmit">
<div class="form-group">
<label for="docentNaam">Naam:</label>
<input v-model="docentNaam" type="text" class="form-control" placeholder="Docenten afkorting">
<label for="wachtwoord">Wachtwoord</label>
<input v-model="wachtwoord" type="password" class="form-control" placeholder="Wachtwoord">
<button type="submit" class="btn btn-primary">Submit</button>
</div>
</form>
Это заголовок, который я получаю:
Я надеюсь, что кто-то можетпомогите мне с моей проблемой, я чувствую, что перепробовал все.