Tôi đã tạo một ứng dụng không đầu bằng Drupal và Vue.js/Nuxt.js. Tôi muốn người dùng ẩn danh đăng ký và Quản trị viên phê duyệt đăng ký của họ (đã hoàn tất cấu hình cho việc này).
Tôi không thể tìm ra cách để hiểu tại sao. Khi tôi cho Truy cập POST trên tài nguyên đăng ký Người dùng quyền cho người dùng ẩn danh, tôi nhận được một 401 trái phép trạng thái với Không có thông tin xác thực nào được cung cấp. nhắn bằng Postman hoặc Axios. Khi tôi cho quản lý người dùng cho phép người dùng ẩn danh, phương thức POST hoạt động tốt với tôi mà không cần X-CSRF-Token trong tiêu đề.
Người dùng ẩn danh không cần bất kỳ phương thức nhận dạng nào để truy cập biểu mẫu đăng ký và gửi thông tin của họ bằng cách sử dụng /user/register?_format=hal_json. Các quản lý người dùng quyền sẽ cho phép bất kỳ người dùng nào hiển thị, chỉnh sửa, xóa người dùng bằng URL máy chủ.
hãy để userData = {
"_liên kết": {
"loại": {
"href": "http://example.com/rest/type/user/user"
}
},
"tên": [{"giá trị": "jack"}],
"mail": [{"value": "[email protected]"}],
"field_phone": [{"value": "99999999"}],
"vai trò": [{"target_id": "thành viên"}],
//"pass": [{"value": "0000"}] // nếu không chọn xác minh email bắt buộc (admin/config/people/accounts), chúng tôi sẽ gửi pass
};
// Đăng dữ liệu
this.$axios.post("http://example.com/user/register?_format=hal_json", userData, {
tiêu đề: {
"Kiểu nội dung": "application/hal+json"
}
}).sau đó (() => {
}).catch(hàm (độ phân giải) {
});
Tôi cũng đã cố gắng loại bỏ quản lý người dùng sự cho phép từ người dùng ẩn danh và thêm Mã thông báo X-CSRF tiêu đề với một giá trị từ www.example.com/session/token, nhưng tôi vẫn nhận được Không có thông tin xác thực nào được cung cấp. thông điệp.