Я использовал next.js для моего фронта. Я генерирую еще один токен с секретным ключом, предоставленным провайдером Stream.io для доступа к прямой трансляции. Я не уверен, был ли мой способ реализации правильным, поскольку она вызывает ошибку, как я интегрирую генерацию токена для доступа к трансляции. < /P>
Пользователь входит в панель инструментов (с аутентифицированным токеном). Поток для трансляции. Но возникает ошибка: < /li>
< /ol>
[client]: не удалось подключить ошибку: {"код": 4, "centuscode" : 400, «Сообщение»: «WS не удалось с кодом: 4 и причина: неверный формат сообщений Auth», «Iswsfailure»: false}
at stablewsconnection.connect (connection.ts: 139: 17) < /p>
< /blockquote>
Я использовал поставщик STREE.IO SDK для потоковой функции. Это мой первый раз, я надеюсь, что я явно доставил свою проблему. Большое спасибо заранее. const Stream: React.FC = () => {
const apiKey = "thisIsTheApiKeyy";
const callId = "thiscallid";
const [client, setClient] = useState(null);
const [call, setCall] = useState(null);
useEffect(() => {
const initializeStream = async () => {
try {
const userData = await fetchUserData();
console.log("User Data:", userData);
const userId = userData?.user_id;
console.log("User ID:", userId);
if (userId) {
const response = await instance.post('/api/generate-token', { userId });
console.log("STREAM TOKEN response: ", response);
const streamToken = response.data.token;
const streamClient = StreamVideoClient.getOrCreateInstance({
apiKey: apiKey,
user: { id: userId, name: "ML LIVE" },
token: streamToken,
});
setClient(streamClient);
const streamCall = streamClient.call("livestream", callId);
streamCall.join({ create: true });
setCall(streamCall);
} else {
console.error("User ID not found");
}
} catch (error) {
console.error("Error initializing Stream:", error);
}
};
initializeStream();
}, []);
if (!client || !call) {
return Loading...;
}
return (
);
}
export default Stream;
< /code>
Ниже приведен код бэкэнд с использованием Express
Backend Generate Thoken Preme < /p>
router.post('/generate-token', (req, res) => {
const { userId } = req.body;
if (!userId) {
return res.status(400).json({ error: 'User ID is required' });
}
try {
const token = jwt.sign({ user_id: userId }, process.env.STREAM_API_SECRET, {
algorithm: 'HS256',
});
res.json({ token });
} catch (error) {
console.error('Error generating token:', error);
res.status(500).json({ error: 'Internal server error' });
}
});
Подробнее здесь: https://stackoverflow.com/questions/793 ... -invalid-a
Code":4,"StatusCode":400,"message":"Сбой WS с кодом: 4 и причина: неверный формат сообщения аутентификации","isWSFailure ⇐ Javascript
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
StatusCode: 400, ReasonPhrase: «Неверный запрос» при попытке войти в систему.
Anonymous » » в форуме C# - 0 Ответы
- 7 Просмотры
-
Последнее сообщение Anonymous
-
-
-
StatusCode: 400, ReasonPhrase: «Неверный запрос» при попытке войти в систему [закрыто]
Anonymous » » в форуме C# - 0 Ответы
- 11 Просмотры
-
Последнее сообщение Anonymous
-