Как я могу подключиться к конечной точке signalR из реакции-native?Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Как я могу подключиться к конечной точке signalR из реакции-native?

Сообщение Anonymous »

Мне нужна помощь в подключении моего реагирующего приложения к конечной точке signalR.
Моя служба уведомлений работает в докере на моем локальном компьютере с открытым портом 7295. Я могу подключиться к этому с помощью веб-сокета postman, но когда я пытаюсь подключиться через эмулятор Android, я получаю следующие ошибки.
Изображение

И вот журналы службы уведомлений:
Изображение

А вот мой js-код из приложения-перехватчика React-native для Android:

Код: Выделить всё

export const useSignalR = (id: string, isMerchant = false) => {
const [connection, setConnection] = useState(
null,
);

useEffect(() => {
const conn = new signalR.HubConnectionBuilder()
.withUrl('http://10.0.2.2:7295/orderNotificationHub', {
skipNegotiation: true,
transport: signalR.HttpTransportType.WebSockets,
})
.withAutomaticReconnect()
.configureLogging(signalR.LogLevel.Information)
.build();

conn
.start()
.then(() => {
console.log('connected to hub');

if (isMerchant) {
conn.invoke('RegisterMerchant', id).catch(console.error);
} else {
conn.invoke('RegisterUser', id).catch(console.error);
}

setConnection(conn); // only set when ready
})
.catch(err => console.error('connection failed: ', err));

return () => {
conn.stop();
};

}, [id, isMerchant]);

return connection;
};
Также приведу код program.cs из службы уведомлений:

Код: Выделить всё

builder.WebHost.ConfigureKestrel(options =>
{
options.ListenAnyIP(7295);
});
builder.Services.AddControllers();
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();
builder.Services.AddSignalR();
builder.Services.AddCors(options =>
{
options.AddPolicy("DevCors", policy =>
{
policy
.AllowAnyHeader()
.AllowAnyMethod()
.SetIsOriginAllowed(_ => true)
.AllowCredentials();
});
});
app.UseCors("DevCors");
app.UseWebSockets();
app.UseAuthorization();

app.MapControllers();

//map hubs
app.MapHub("/orderNotificationHub");
Есть идеи, как это исправить?

Подробнее здесь: https://stackoverflow.com/questions/798 ... act-native
Ответить

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

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

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

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

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