Как ответить только на статус кода 204 без основного сообщенияPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Как ответить только на статус кода 204 без основного сообщения

Сообщение Anonymous »

У меня возникла проблема при добавлении записи в базу данных. Когда я получаю код ответа 200 с перенаправлением: true, запись не добавляется в таблицу моих пользователей. Однако, если я получу ответ 204 с перенаправлением: false, запись будет успешно добавлена.
Я также заметил в Postman, что если я выйду из системы, а затем зарегистрируюсь снова, я получу код ответа 204.
Изображение

//Register.jsx
async function handleRegister(e) {
e.preventDefault();

await fetch('http://localhost:8000/sanctum/csrf-cookie', {
method: "GET",
credentials: "include"
});

// Extract CSRF token
const csrfToken = decodeURIComponent(
document.cookie.split('; ').find(row => row.startsWith('XSRF-TOKEN='))?.split('XSRF-TOKEN=')[1] || ''
);
console.log(csrfToken);

const res = await fetch('http://localhost:8000/register', {
method: "POST",
headers: {
"X-XSRF-TOKEN": csrfToken
},
credentials: "include",
body: JSON.stringify(formData),
});

if (!res.ok) {
console.error("Registration failed:", res);
if (res.errors) {
setErrors(res.errors);
console.error("Errors:", res.errors);
}
} else {
navigate("/login");
console.log(res);
}
}

//RegisteredUserController.php
namespace App\Http\Controllers\Auth;

use App\Http\Controllers\Controller;
use App\Models\User;
use Illuminate\Auth\Events\Registered;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Hash;
use Illuminate\Validation\Rules;

class RegisteredUserController extends Controller
{
/**
* Handle an incoming registration request.
*
* @throws \Illuminate\Validation\ValidationException
*/
public function store(Request $request): Response
{
$request->validate([
'name' => ['required', 'string', 'max:255'],
'email' => ['required', 'string', 'lowercase', 'email', 'max:255', 'unique:'.User::class],
'password' => ['required', 'confirmed', Rules\Password::defaults()],
]);

$user = User::create([
'name' => $request->name,
'email' => $request->email,
'password' => Hash::make($request->string('password')),
]);

event(new Registered($user));

Auth::login($user);

return response()->noContent();
}
}

//auth.php
Route::post('/register', [RegisteredUserController::class, 'store'])
->middleware('guest')
->name('register');


Подробнее здесь: https://stackoverflow.com/questions/795 ... dy-message
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»