所以正如標題所說,問題是我使用 axios 從 Vue 發送請求,當我發送引數時它有引數資料(我使用 console.log 看到它),但是當我在 C# (. NET Core)這些引數為空。如果需要更多資訊或代碼,請告訴我。
謝謝。
視圖:
methods: {
translate() {
//This log RETURNS DATA, so parameters aren't null at this moment
console.log(this.textToTranslate, this.fromLanguage, this.toLanguage);
axios
.post(
"http://localhost:5000/api/Translate",
{
TranslateRequest: {
textToTranslate: this.textToTranslate,
fromLanguage: this.fromLanguage,
toLanguage: this.toLanguage,
},
},
{
headers: {
"Access-Control-Allow-Origin": "*",
"Access-Control-Allow-Methods":
"GET, POST, PATCH, PUT, DELETE, OPTIONS",
"Access-Control-Allow-Headers":
"Origin, Content-Type, X-Auth-Token",
},
}
)
.then((res) => {
console.log(res);
this.translatedText = res.data;
})
.catch((err) => {
console.log(err.response);
alert(err.response);
});
},
},
C#:
[ApiController]
[Route("api/[controller]")]
public class TranslateController : ControllerBase
{
[EnableCors("AllowOrigin")]
[HttpGet]
public string GetTranslatedText(TranslateRequest request)
{
//request object isn't null but their parameters are
return TranslateText(request);
}
}
uj5u.com熱心網友回復:
你的問題在這里:
{
"TranslateRequest":{
"textToTranslate":"this.textToTranslate",
"fromLanguage":"this.fromLanguage",
"toLanguage":"this.toLanguage"
}
}
傳遞資料如下:
{
"textToTranslate":"this.textToTranslate",
"fromLanguage":"this.fromLanguage",
"toLanguage":"this.toLanguage"
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/381819.html
上一篇:如何強制System.Text.Json.JsonElement.GetProperty使用不區分大小寫的方法搜索屬性?
