Azure Web App -前端未连接到后端

brtdzjyr  于 2023-11-21  发布在  其他
关注(0)|答案(1)|浏览(207)

在通过Azure Web App托管我的前端和后端应用程序后,我无法让我的前端访问后端上的端点。我不断收到来自axios的400 Bad Request。
这曾经是我的本地端点:
https://localhost:7047/api/forum
然后,我将根URL切换到Azure上的属性部分下列出的我的URL:
https://nicksportfolio.azurewebsites.net/api/forum
在我的.NET应用程序上,我的CORS被配置为允许origin:

  1. {
  2. builder.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader();
  3. }));

字符串
我甚至在Azure上的CORS部分将“允许的来源”设置为“*”,以允许从任何来源访问我的端点(我知道这是一个安全问题,将来会改变它)

anhgbhbe

anhgbhbe1#

根据您提供的日志,SignUp端点中的400 Bad Request错误可能是由于UserDto_Creation对象中缺少ProfileImageFile属性或ProfileImageFile属性无效。
SignUp端点需要具有以下属性的multipart/form-data请求:

  • Username
  • Password
  • Email
  • ProfileImageFile(可选)

如果请求中没有ProfileImageFile属性,或者文件无效,则API将返回400 Bad Request错误。
要修复此错误,您需要确保ProfileImageFile属性存在于请求中,并且文件有效。您可以通过检查ContentTypeContentLength属性来检查文件的有效性。
使用下面的代码:

  1. [HttpPost]
  2. public async Task<ActionResult<UserDto_Return>> CreateUser([FromForm] UserDto_Creation newUser)
  3. {
  4. string? imageUrl = null;
  5. if (newUser.ProfileImageFile != null && newUser.ProfileImageFile.Length != 0)
  6. {
  7. var fileName = newUser.Username + "\\" + DateTime.Now + "\\" + Path.GetExtension(newUser.ProfileImageFile.FileName);
  8. imageUrl = await _userService.UploadImage(newUser.ProfileImageFile, fileName);
  9. }
  10. // Manually map (due to ProfileURL)
  11. var newUserEntity = new Entities.User.User(newUser.Username, newUser.Password, newUser.Email)
  12. {
  13. FirstName = newUser.FirstName,
  14. LastName = newUser.LastName,
  15. Bio = newUser.Bio,
  16. ProfileURL = imageUrl
  17. };
  18. await _userRepository.CreateUserAsync(newUserEntity);
  19. var newUserToReturn = _mapper.Map<Models.User.UserDto_Return>(newUserEntity);
  20. return CreatedAtRoute("GetUser",
  21. new
  22. {
  23. username = newUserToReturn.Username,
  24. password = newUserToReturn.Password
  25. },
  26. newUserToReturn);
  27. }

个字符


的数据



  • 有关详细信息,请参阅使用.NET Core 6 Web API上传单个和多个文件。
展开查看全部

相关问题