Pusher/Chatkit: InstanceID в пути и маркер доступа не совпадают
Какие?
В настоящее время я создаю собственное приложение с помощью chatkit, однако проверка подлинности кажется неудачной и продолжает возвращать следующее сообщение: Instance ID in the path and the access token don't match
Я использую Laravel в качестве бэкэнда и имею следующий маршрут:Route::post('/chatkit-auth-user', 'API\MessagesController@authenticateChatkitUser');
В рамках этого метода я аутентифицирую пользователя в зависимости от его идентификатора, например:
public function authenticateChatkitUser(Request $request)
{
$userId = $request->input('user_id');
$authData = $this->chatkit->authenticate([
'user_id' => "{$userId}",
]);
return response()
->json(
$authData['body'],
$authData['status']
);
}
Токен является generate, который затем явно передается в экземпляр TokenProvider следующим образом:
const url = 'https://my-endpoint.com/api/chatkit-auth-user';
const userToken = this.state.user.authToken;
const tokenProvider = new Chatkit.TokenProvider({
url,
headers: {
Authorization: 'Bearer ' + userToken,
'Content-Type': 'application/json',
},
});
const chatManager = new Chatkit.ChatManager({
instanceLocator: '<MY_INSTANCE_LOCATOR_ID>',
userId: `${this.state.user.userId}`,
tokenProvider: tokenProvider
});
chatManager.connect().then(currentUser => {
this.state.currentUser = currentUser;
console.log(currentUser);
this.currentUser.subscribeToRoom({
roomId: CHATKIT_ROOM_ID,
hooks: {
onNewMessage: this.onReceive.bind(this)
}
});
});
currentUser
никогда не утешается и всегда возвращает 403 с сообщением в заголовке. Из документации, я думаю, что я все реализовал правильно, я даже добавил приложение heroku с https://github.com/pusher/chatkit-server-node, та же проблема все еще возникает. Я потратил пару дней, пытаясь понять это, и был бы признателен, если бы я мог получить некоторые рекомендации, если я делаю что-то не так!