最近需要和某公司进行接口对接,发现用WebClient获取URL结尾带.的资源,会出404错误。但是用IE还有其它浏览器访问此资源,还能找到它。很神奇。

于是,我百度了,找到的一堆都是说此url不规范。但是它不能解决我的问题。

然后,我google之,在http://stackoverflow.com/上面,终于是找到了如此解析此问题的办法:

Random seed = new Random();

MethodInfo getSyntax = typeof(UriParser).GetMethod("GetSyntax", System.Reflection.BindingFlags.Static | System.Reflection.BindingFlags.NonPublic);
FieldInfo flagsField = typeof(UriParser).GetField("m_Flags", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic);
if (getSyntax != null && flagsField != null)
{
foreach (string scheme in new[] { "http", "https" })
{
UriParser parser = (UriParser)getSyntax.Invoke(null, new object[] { scheme });
if (parser != null)
{
int flagsValue = (int)flagsField.GetValue(parser);
// Clear the CanonicalizeAsFilePath attribute
if ((flagsValue & 0x1000000) != )
flagsField.SetValue(parser, flagsValue & ~0x1000000);
}
}
}
//使用
var url = new Uri((mdishInfopic ?? "").Trim() + "?newDate=" + seed.NextDouble());

最新文章

  1. 从API请求数据的方法(主要适用于tp5)
  2. microsofr visual studio编写c语言
  3. 【转】Ajax 基础学习
  4. Android的selector,背景选择器
  5. Jquery实现搜索框提示功能
  6. QTP连接MySQL
  7. keepalived原理
  8. gradle 使用总结
  9. 关于本地化(localization)
  10. python-map的用法
  11. 010-1 Socket地址族AddressFamily
  12. kafka AdminClient 闲时关闭连接
  13. HG
  14. PXE+kickstart无人值守安装CentOS 7
  15. 动态编程(Dynamic Programming)
  16. 解决y7000笔记本ubuntu18.04下 休眠挂起后唤醒花屏
  17. Python11 RabbitMQ Redis
  18. 域scope 介绍,及查找数据
  19. scala 入门Eclipse环境搭建
  20. 第31节:Java基础-类与对象

热门文章

  1. vtkMapper
  2. LYDSY模拟赛day2 Divisors
  3. R入门<三>-R语言实战第4章基本数据管理摘要
  4. HTML兼容问题——HACK技术
  5. APP注释代码
  6. 【总结2】PhpStorm利用XDebug调试PHP技巧
  7. PHP正则表达式模式修饰符详解
  8. 还原MySql数据库失败:max_allowed_packet 设置过小导致记录写入失败
  9. 相同根域名下跨域共享session的解决方案
  10. Linux学习之二--搭建FTP服务器