當我將商品添加到我的購物車時,我將購物車作為響應發回。沒問題。這些代碼在語言環境(我的計算機)中工作,返迴響應 200 。但是當我將項目發送到託管時。當我將商品添加到購物車時,響應 204(Null) 。我沒有解決這個問題。
BACKEND(.Net Core 3.1 ASPNET Web Api)
FrontEnd
import { message } from "antd";
export type ApiSuccessResponse<T> = {
ok: true;
data: T;
};
export type ApiErrorResponse = {
ok: false;
status: number;
message: string;
};
export type ApiResponse<T> = ApiSuccessResponse<T> | ApiErrorResponse;
export type RequestMethod = "DELETE" | "GET" | "PATCH" | "POST" | "PUT";
export async function request<T>(
uri: string,
method?: RequestMethod,
body?: any
): Promise<ApiResponse<T>> {
let token = localStorage.getItem("token");
const response = await fetch(`/api/${uri}`, {
method: method || "GET",
headers: {
"Content-Type": "application/json; charset=utf-8",
Authorization: "Bearer " + (token || ""),
},
body: body ? JSON.stringify(body) : undefined,
});
if (!response.ok) {
if (response.status === 401) {
localStorage.clear();
window.location.reload();
} else if (response.status === 500) {
const text = await response.text();
if (text && text.length) {
message.error(JSON.parse(text).message);
}
}
return {
ok: false,
status: response.status,
message: response.statusText,
};
}
const text = await response.text();
if (text && text.length > 0) {
const data = JSON.parse(text);
return { ok: true, data: data as T };
}
return { ok: true, data: null! };
}
```
204表示端點成功但沒有內容。據我所知,您返回的是 null。請解構您的最後一行並等待結果,如下所示:
var authServiceUnit = await CreateAuthServiceUnitAsync(_masterServiceUnit);
var cartDto = await authServiceUnit.CarService.GetCartAsync(CarId,KullaniciId, UserType);
return cartDto; // set here a breakpoint
購物車Dto應該為空。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句