返回字符串时调用Http.PostAsync时,应用程序停止工作

强力

我有一个Blazor应用程序,该应用程序正在调用WebAPI方法,该方法返回一个字符串,但是当它运行时,它只会停止。该应用程序保持打开状态,但似乎没有任何反应。

当我在控制器中放置一个断点时,它会运行。

var ms = new System.IO.MemoryStream();
await file.Data.CopyToAsync(ms);

status = $"Finished loading {file.Size} bytes from {file.Name}";

var content = new MultipartFormDataContent {
  { new ByteArrayContent(ms.GetBuffer()), "\"upload\"", file.Name }
};

string featureImage = await Http.PostAsync("api/Blog/ReturnString", content).Result.Content.ReadAsStringAsync();

上面是调用WebAPI方法的代码。下面是返回非常简单的字符串的控制器。

[Authorize]
[HttpPost("[action]")]
public async Task<string> ReturnString()
{
    return "123456";
}
负数

除了@enet的评论外,可能还有两个错误:

  1. 有没有在你的方式死锁的风险Result使用.Result.Content您需要将代码更改为await ...
  2. 另外,如果您在使用Blazor Server端,请注意,Http在Blazor ServerSide App中调用与Blazor WebAssembly App不同。您需要创建自己的HttpClient或注入一个HttpClient,然后为其提供基本uri。

希望以下内容能对您有所帮助:

(如果您使用的是Blazor ServerSide)HttpClient在启动时注册相关服务:

services.AddHttpClient();   // only if you're using Blazor ServerSide

在Blazor组件/页面中:

@using System.Net.Http               
@inject IHttpClientFactory HttpClientFactory    @ *如果使用Blazor ServerSide * @
 @inject NavigationManager navMgr                @ *如果使用Blazor ServerSide * @ 


@code { var Http = HttpClientFactory.CreateClient();     //如果您使用的是Blazor ServerSide
     Http.BaseAddress = new Uri(navMgr.BaseUri);      //如果您使用的是Blazor ServerSide 
    // //添加凭据,如果您使用的是Blazor ServerSide 
    // ...您的代码
    //不要通过访问`.Result`属性来阻止它,请等待!
    
     
    等待Http.PostAsync(“ api / Blog / ReturnString”,content).Result.Content.ReadAsStringAsync();
    
    


    
   
   
    
   
   
    var resp =等待Http.PostAsync(“ api / Blog / ReturnString”,content); 
    var featureImage =等待resp.Content.ReadAsStringAsync();

最后,如果上述代码不能解决问题,请您F12在浏览器中并向我们​​显示错误消息?

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将字符串从EditText转换为整数会导致应用程序在启动之前停止工作

来自分类Dev

将字符串从EditText转换为整数会导致应用程序在启动之前停止工作

来自分类Dev

用户向列表使用的字符串数组添加新单词(应用程序停止工作)

来自分类Dev

应用程序在 Playstore 上传时停止工作

来自分类Dev

我的代码有什么问题?当我输入字符串时,程序将停止工作。我如何保持工作程序甚至输入字符串

来自分类Dev

Intent Service可以正常工作,但是在应用程序关闭时,它调用的工作类会停止

来自分类Dev

应用程序已停止工作

来自分类Dev

字符串为空时如何停止应用程序崩溃

来自分类Dev

当我想将字符串转换为Long时,“不幸的是应用程序已停止”

来自分类Dev

致命错误:在从 Android 应用程序输入字符串时调用 php 中布尔值的成员函数 bind_param()

来自分类Dev

播放应用程序关闭时未调用停止挂接

来自分类Dev

运行反向字符串程序时导致停止工作

来自分类Dev

当我尝试退出字符串时,“。exe停止工作”

来自分类Dev

从控制台应用程序返回字符串

来自分类Dev

从BlackBerry Java应用程序返回字符串

来自分类Dev

从菜单中选择帮助(警告对话框)选项时,应用程序停止工作

来自分类Dev

单击按钮编码以保存、刷新和搜索时,应用程序停止工作

来自分类Dev

在 Actions on Google 上启动登录流程时,Dialogflow 应用程序停止工作

来自分类Dev

调用ASP.Net WebAPI端点时,JavaScript提取调用返回空字符串

来自分类Dev

当我按下 ButtonImage 时应用程序崩溃。不幸的是,该应用程序已停止工作

来自分类Dev

Regexxer 停止工作 - 它找不到字符串

来自分类Dev

单击按钮后,应用程序停止工作

来自分类Dev

Xamarin Android应用程序不幸地停止工作

来自分类Dev

单击TextView后,Android应用程序停止工作

来自分类Dev

不幸的是,应用程序已停止工作?

来自分类Dev

android-地图应用程序停止工作

来自分类Dev

Cordova Windows应用程序停止工作

来自分类Dev

.NET 4.0应用程序停止工作

来自分类Dev

单击按钮后应用程序停止工作

Related 相关文章

  1. 1

    将字符串从EditText转换为整数会导致应用程序在启动之前停止工作

  2. 2

    将字符串从EditText转换为整数会导致应用程序在启动之前停止工作

  3. 3

    用户向列表使用的字符串数组添加新单词(应用程序停止工作)

  4. 4

    应用程序在 Playstore 上传时停止工作

  5. 5

    我的代码有什么问题?当我输入字符串时,程序将停止工作。我如何保持工作程序甚至输入字符串

  6. 6

    Intent Service可以正常工作,但是在应用程序关闭时,它调用的工作类会停止

  7. 7

    应用程序已停止工作

  8. 8

    字符串为空时如何停止应用程序崩溃

  9. 9

    当我想将字符串转换为Long时,“不幸的是应用程序已停止”

  10. 10

    致命错误:在从 Android 应用程序输入字符串时调用 php 中布尔值的成员函数 bind_param()

  11. 11

    播放应用程序关闭时未调用停止挂接

  12. 12

    运行反向字符串程序时导致停止工作

  13. 13

    当我尝试退出字符串时,“。exe停止工作”

  14. 14

    从控制台应用程序返回字符串

  15. 15

    从BlackBerry Java应用程序返回字符串

  16. 16

    从菜单中选择帮助(警告对话框)选项时,应用程序停止工作

  17. 17

    单击按钮编码以保存、刷新和搜索时,应用程序停止工作

  18. 18

    在 Actions on Google 上启动登录流程时,Dialogflow 应用程序停止工作

  19. 19

    调用ASP.Net WebAPI端点时,JavaScript提取调用返回空字符串

  20. 20

    当我按下 ButtonImage 时应用程序崩溃。不幸的是,该应用程序已停止工作

  21. 21

    Regexxer 停止工作 - 它找不到字符串

  22. 22

    单击按钮后,应用程序停止工作

  23. 23

    Xamarin Android应用程序不幸地停止工作

  24. 24

    单击TextView后,Android应用程序停止工作

  25. 25

    不幸的是,应用程序已停止工作?

  26. 26

    android-地图应用程序停止工作

  27. 27

    Cordova Windows应用程序停止工作

  28. 28

    .NET 4.0应用程序停止工作

  29. 29

    单击按钮后应用程序停止工作

热门标签

归档