You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

访问HTTP服务器的正确URL格式是什么 如何解决HttpClient报字符串无效错误

问题原因

你传入GetBytes方法的参数不是合法URL,缺失了HTTP/HTTPS协议前缀,所以触发字符串无效报错。

正确URL格式

完整的HTTP请求URL必须包含协议头,正确写法为:
http://192.168.1.22:8080/myDataCollection.xml
如果你的服务启用了HTTPS,将前缀替换为https://即可。

修正后代码示例

byte[] vs = new HttpClient().GetBytes("http://192.168.1.22:8080/myDataCollection.xml");
var bytes = vs;
CrestronConsole.PrintLine("bytes : {0}", bytes);
// 额外提示:如果要读取XML文本内容,不要直接用bytes.ToString(),要用对应编码解码
// 示例:string xmlContent = Encoding.UTF8.GetString(bytes);
return bytes.ToString();

额外优化建议

  • 不要每次请求都实例化新的HttpClient,全局复用同一个实例可以避免套接字资源被占满的问题
  • 网络请求逻辑建议增加异常捕获,处理网络断开、服务未启动、目标资源不存在等异常场景
  • 字节数组直接调用ToString()只会输出类型名,如果需要获取XML文本内容,需要用对应编码(比如UTF8、GBK)对字节数组做解码操作

内容的提问来源于stack exchange,提问作者brad wykoff

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 09:06:02