Q:在ComFi软件中下载文件时,一是将文件转换为以%2F替换的URL,获取时文件会找不到,同时不以%2F替换的url进行获取数据文件时,也找不到文件。
%2F是/ 的转义字符。
在这里只能给出解决方案,具体原因笔者也一知半解,只在此记录:
Step1
在ComFi给出的Demo中,添加配置文件,方法是 右击项目->添加->新建项,在Visual C#中选择 应用程序配置文件,新建一个配置文件,写入内容:(大体意思就是关闭/转义字符吧)
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<uri>
<schemeSettings>
<add name="http" genericUriParserOptions="DontUnescapePathDotsAndSlashes" />
</schemeSettings>
</uri>
</configuration>
Step2
? 接下来在ConFI 的Demo 中,直接修改file_added事件的响应函数即可,函数实现了将相机拍摄的照片通过ComFi设备传输到电脑上。
socket.On("file_added", new Action<object>((filename) =>
{
string name = filename.ToString();
MessageBox.Show("File add:" + name);
name = System.Web.HttpUtility.UrlEncode(name, System.Text.Encoding.GetEncoding("UTF-8"));
req = new RestRequest("/raw/" + name);
req.Credentials = new NetworkCredential("CamFi", "");
req.Method = Method.GET;
res = (RestResponse)client.Execute(req);
MemoryStream ms = new MemoryStream(res.RawBytes);
FileStream fs = new FileStream("D:\\img\\1.jpg",FileMode.Create);
ms.WriteTo(fs);
ms.Close();
fs.Close();
}));
照片结果: