我有一个问题-当try 将数据从前端发送到后端时,它确实访问了后端代码中的相关控制器/函数,但当我try 调试它时,所有的值都变成了空.
我正在工作的项目是由第三方自由职业者发起的,当我创建新的控制器/功能时,我使用的方法与他们相同. 然而,有一个 case 有一个问题,我找不出这里到底有什么不同,这个特定的函数不起作用.
为简单起见,我只是用一些随机数据来测试它,看看控制器是否可以从Reaction中获取值.
Frontend code:个
export const fetchToken = createAsyncThunk(
"tokens/fetchToken",
async (terminals: any, thunkAPI) =>
{
try
{
const env: any = localStorage.getItem('environment');
const token: any = "abcd";
const model: any = {
Token: "abcd",
Environment: env,
};
alert(JSON.stringify(model));
const response = await axios({
url: apiUrl,
method: "get",
data: model,
headers:
{
'accept': 'text/plain',
'Authorization': 'Bearer '+ JSON.parse(localStorage.getItem('token') || '{}')
}
})
.then(response =>
{
alert(JSON.stringify(response.data.resultData));
return response.data.resultData;
})
.catch(error =>
{
alert(error.response.data);
});
return response;
} catch (e)
{
return thunkAPI.rejectWithValue("");
}
Backend code:个
除了函数声明之外,不需要其他东西,因为我不会在没有所需值的情况下进入代码:
[HttpGet, Authorize]
public async Task<ActionResult<APIResponseBase<TokenDTO>>> GetTokenItems([FromQuery] TokenRequest filter)
TokenRequest model:个
using System.ComponentModel.DataAnnotations;
namespace CompanyName.Models.API
{
public class TokenRequest
{
public string? Token { get; set; } = string.Empty;
public string? Environment { get; set; }
}
}
同样,代码确实访问了所需的函数.但"Filter"中的所有值都是空值、空字符串、零等.
我确实记得以前有过类似的问题,但我不知道是什么原因导致了这一点.
What I checked:个
- 第一个"alert "显示"模型"变量已正确生成.
- 当然,我验证了过滤器模型中的变量和前端中的变量是相同的.
- 我试着用"POST"替换"GET",反之亦然.
- 我甚至试着把"模型"改名为"过滤器".
- 从函数声明中删除"FromQuery"也无济于事.
- 在判断模式-&>网络中,我得到以下信息:
请帮帮我我想找出是什么原因造成的,这样下次我遇到类似的事情时就不必猜测了.
谢谢,
叶夫根尼.