WebSocketReceiveResult 强制接收二进制
Posted
技术标签:
【中文标题】WebSocketReceiveResult 强制接收二进制【英文标题】:WebSocketReceiveResult force to receive binary 【发布时间】:2020-04-24 19:11:39 【问题描述】:我正在使用Websocket.Client
,它是ClientWebSocket
的包装器,在其内部我可以看到WebSocketReceiveResult
,它正在使用它来检测消息内容result.MessageType == WebSocketMessageType.Text
。
有什么方法可以强制 web socker只接收二进制消息(不做任何字符串转换?),还是服务器指定的数据格式?
namespace Websocket.Client
//
// Summary:
// Received message, could be Text or Binary
public class ResponseMessage
//
// Summary:
// Received text message (only if type = WebSocketMessageType.Text)
public string Text get;
//
// Summary:
// Received text message (only if type = WebSocketMessageType.Binary)
public byte[] Binary get;
//
// Summary:
// Current message type (Text or Binary)
public WebSocketMessageType MessageType get;
//
// Summary:
// Create binary response message
public static ResponseMessage BinaryMessage(byte[] data);
//
// Summary:
// Create text response message
public static ResponseMessage TextMessage(string data);
//
// Summary:
// Return string info about the message
public override string ToString();
【问题讨论】:
【参考方案1】:Websocket.Client
的作者在 github 页面上发布后的几个小时内就实现了此功能......太棒了!
using var client = new WebsocketClient()
IsTextMessageConversionEnabled = false
;
【讨论】:
以上是关于WebSocketReceiveResult 强制接收二进制的主要内容,如果未能解决你的问题,请参考以下文章