Итак, у меня проблема: серверная часть находится в контейнере, что может быть причиной, но я не уверен, почему я задаю вопрос. Проблема в том, что когда я пытаюсь сделать запрос к серверной части, я получаю эту ошибку DEPTH_ZERO_SELF_SIGNED_CERT
Я пробовал использовать --experimental-https для команды run dev, и это не сработало.< /p>
Проблема в том, что даже когда я явно выставляю небезопасный порт только через файл docker-compose.yml (8080), он не работает, и безопасное соединение все еще доступно, и когда я даже пытаюсь чтобы сделать запрос на небезопасное соединение, я все равно получаю ту же ошибку.
Это Dockerfile, docker-compose.yml и FitnessPlannerAPICalls.ts:
Файл Docker
# See https://aka.ms/customizecontainer to learn how to customize your debug container and how Visual Studio uses this Dockerfile to build your images for faster debugging.
# This stage is used when running from VS in fast mode (Default for Debug configuration)
FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base
USER app
WORKDIR /app
EXPOSE 8080
# Uncomment the line below to enable HTTPS
#EXPOSE 8081
# This stage is used to build the service project
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
ARG BUILD_CONFIGURATION=Release
WORKDIR /src
COPY ["FitnessPlannerAPI/FitnessPlannerAPI.csproj", "FitnessPlannerAPI/"]
RUN dotnet restore "./FitnessPlannerAPI/FitnessPlannerAPI.csproj"
COPY . .
WORKDIR "/src/FitnessPlannerAPI"
RUN dotnet build "./FitnessPlannerAPI.csproj" -c $BUILD_CONFIGURATION -o /app/build
# This stage is used to publish the service project to be copied to the final stage
FROM build AS publish
ARG BUILD_CONFIGURATION=Release
RUN dotnet publish "./FitnessPlannerAPI.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false
# This stage is used in production or when running from VS in regular mode (Default when not using the Debug configuration)
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "FitnessPlannerAPI.dll"]
docker-compose.yml
networks:
fitnessplanner:
driver: bridge
services:
fitnessplannerapi:
container_name: fitnessplannerapi
image: ${DOCKER_REGISTRY-}fitnessplannerapi
build:
context: .
dockerfile: FitnessPlannerAPI/Dockerfile
ports:
- "1337:8080"
# Uncomment the line below to enable HTTPS
#- "1337:8081"
depends_on:
- fitnessplannersqlserver
environment:
- DB_HOST=fitnessplannersqlserver
- DB_NAME=FitnessPlannerDB
- DB_SA_PASSWORD=your-secure-pw
networks:
- fitnessplanner
fitnessplannersqlserver:
container_name: fitnessplannersqlserver
image: mcr.microsoft.com/mssql/server:2022-latest
environment:
- ACCEPT_EULA=Y
- MSSQL_SA_PASSWORD=your-secure-pw
ports:
- 1433:1433
volumes:
- ./data:/var/opt/mssql/data
- ./log:/var/opt/mssql/log
- ./secrets:/var/opt/mssql/secrets
networks:
- fitnessplanner
fitnessPlannerAPICalls.ts
"use server"
// Define the user schema as a TypeScript interface
export interface UserInitialSetupSchema {
userId: string;
age: number;
gender: string;
height: number;
weight: number;
fitnessLevel: string;
fitnessGoal: string;
workoutFrequency: number;
}
export async function addUserInitialSetup(data : UserInitialSetupSchema)
{
// USING ENCRYPTED CONNECTION
// const apiEndpoint = 'https://localhost:1337/api/userinitialsetup/add';
// USING UNENCRYPTED CONNECTION
const apiEndpoint = 'http://localhost:1337/api/userinitialsetup/add';
try {
const response = await fetch(apiEndpoint, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Accept': 'application/json',
},
body: JSON.stringify(data),
});
switch (response.status) {
case 200:
return 'User initial setup added successfully.';
case 400:
return 'User already exists.';
default:
return 'Something went wrong.' + await response.json();
}
} catch (error) {
console.error('Failed to add user initial setup:', error);
return 'Failed to add user initial setup.';
}
}
Подробнее здесь: https://stackoverflow.com/questions/791 ... re-web-api
NextJS с веб-API ASP.NET Core ⇐ C#
Место общения программистов C#
1731029349
Anonymous
Итак, у меня проблема: серверная часть находится в контейнере, что может быть причиной, но я не уверен, почему я задаю вопрос. Проблема в том, что когда я пытаюсь сделать запрос к серверной части, я получаю эту ошибку DEPTH_ZERO_SELF_SIGNED_CERT
Я пробовал использовать --experimental-https для команды run dev, и это не сработало.< /p>
Проблема в том, что даже когда я явно выставляю небезопасный порт только через файл docker-compose.yml (8080), он не работает, и безопасное соединение все еще доступно, и когда я даже пытаюсь чтобы сделать запрос на небезопасное соединение, я все равно получаю ту же ошибку.
Это Dockerfile, docker-compose.yml и FitnessPlannerAPICalls.ts:
Файл Docker
# See https://aka.ms/customizecontainer to learn how to customize your debug container and how Visual Studio uses this Dockerfile to build your images for faster debugging.
# This stage is used when running from VS in fast mode (Default for Debug configuration)
FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base
USER app
WORKDIR /app
EXPOSE 8080
# Uncomment the line below to enable HTTPS
#EXPOSE 8081
# This stage is used to build the service project
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
ARG BUILD_CONFIGURATION=Release
WORKDIR /src
COPY ["FitnessPlannerAPI/FitnessPlannerAPI.csproj", "FitnessPlannerAPI/"]
RUN dotnet restore "./FitnessPlannerAPI/FitnessPlannerAPI.csproj"
COPY . .
WORKDIR "/src/FitnessPlannerAPI"
RUN dotnet build "./FitnessPlannerAPI.csproj" -c $BUILD_CONFIGURATION -o /app/build
# This stage is used to publish the service project to be copied to the final stage
FROM build AS publish
ARG BUILD_CONFIGURATION=Release
RUN dotnet publish "./FitnessPlannerAPI.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false
# This stage is used in production or when running from VS in regular mode (Default when not using the Debug configuration)
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "FitnessPlannerAPI.dll"]
docker-compose.yml
networks:
fitnessplanner:
driver: bridge
services:
fitnessplannerapi:
container_name: fitnessplannerapi
image: ${DOCKER_REGISTRY-}fitnessplannerapi
build:
context: .
dockerfile: FitnessPlannerAPI/Dockerfile
ports:
- "1337:8080"
# Uncomment the line below to enable HTTPS
#- "1337:8081"
depends_on:
- fitnessplannersqlserver
environment:
- DB_HOST=fitnessplannersqlserver
- DB_NAME=FitnessPlannerDB
- DB_SA_PASSWORD=your-secure-pw
networks:
- fitnessplanner
fitnessplannersqlserver:
container_name: fitnessplannersqlserver
image: mcr.microsoft.com/mssql/server:2022-latest
environment:
- ACCEPT_EULA=Y
- MSSQL_SA_PASSWORD=your-secure-pw
ports:
- 1433:1433
volumes:
- ./data:/var/opt/mssql/data
- ./log:/var/opt/mssql/log
- ./secrets:/var/opt/mssql/secrets
networks:
- fitnessplanner
fitnessPlannerAPICalls.ts
"use server"
// Define the user schema as a TypeScript interface
export interface UserInitialSetupSchema {
userId: string;
age: number;
gender: string;
height: number;
weight: number;
fitnessLevel: string;
fitnessGoal: string;
workoutFrequency: number;
}
export async function addUserInitialSetup(data : UserInitialSetupSchema)
{
// USING ENCRYPTED CONNECTION
// const apiEndpoint = 'https://localhost:1337/api/userinitialsetup/add';
// USING UNENCRYPTED CONNECTION
const apiEndpoint = 'http://localhost:1337/api/userinitialsetup/add';
try {
const response = await fetch(apiEndpoint, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Accept': 'application/json',
},
body: JSON.stringify(data),
});
switch (response.status) {
case 200:
return 'User initial setup added successfully.';
case 400:
return 'User already exists.';
default:
return 'Something went wrong.' + await response.json();
}
} catch (error) {
console.error('Failed to add user initial setup:', error);
return 'Failed to add user initial setup.';
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79166968/nextjs-with-asp-net-core-web-api[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия