我正在向要写入的方法发送一个流,在这些方法中我使用的是二进制阅读器/ wrtier.当读取器/写入器被处理时,using或者仅在未被引用时,流也被关闭?
我会发送一个BinaryReader/Writer,但我也在使用StreamReader(也许我应该绕过它.我只使用GetLine和ReadLine).如果每次作家/读者关闭时关闭流,这是非常麻烦的.
我试图在中间件中读取正文以进行身份验证,但是当请求到达api控制器时,对象是空的,因为正在读取正文.有没有办法解决.我正在中间件中读这样的身体.
var buffer = new byte[ Convert.ToInt32( context.Request.ContentLength ) ];
await context.Request.Body.ReadAsync( buffer, 0, buffer.Length );
var body = Encoding.UTF8.GetString( buffer );
Run Code Online (Sandbox Code Playgroud) 我只是想通过在 Blazor 应用程序中使用 Http POST 方法
public async Task CreateUnit(UnitEntity unit)
{
await _http.PostJsonAsync<UnitEntity>("api/units", unit);
}
Run Code Online (Sandbox Code Playgroud)
_http 和 myObject 已在别处定义,但我收到了这个奇怪的错误。任何人都可以帮忙吗?这是我在其他地方能找到的最接近的东西:https : //github.com/dotnet/runtime/issues/30945。
完整的错误信息是
System.Text.Json.JsonException:输入不包含任何 JSON 标记。当 isFinalBlock 为 true 时,期望输入以有效的 JSON 令牌开头。路径:$ | 行号:0 | 字节位置内联:0。
这是堆栈