使用 C# Smart Device Project .net 2.0 发出 HTTPS 请求
Making a HTTPS request using C# Smart Device Project .net 2.0
我正在从事 Windows 智能设备项目。我想向 API 主机发送 HTTPS 请求以检索信息。
下面 link 中记录的当前代码在我对 Windows 表单应用程序的试用中完美运行:
但是,这在智能设备应用程序中不起作用,因为我无权访问智能设备项目上的 System.Net.Security
(实际上 System.Net
下只有 System.Net.Sockets
,使我无法对非 SSL 站点之外的查询使用相同的方法。
是否有相同解决方案能够发出 HTTPS 请求的解决方法?
编辑: 我知道 Google 地图是一个不好的例子,尤其是当它们的 API 密钥通常通过 HTTPS GET 方法不安全地发送并且最好使用服务器来保护请求。
找到了我自己问题的答案。
我可以创建一个 C++ 模块来处理 HTTPS 请求,然后使用 C# 的 pinvoke 方法调用 C++ 模块并return获取结果。
或者我可以使用制作一个像中间人一样处理 HTTP 请求的服务器,类似于 C++ 模块。此服务器代表智能设备应用程序向 return 结果发出 HTTPS 请求。
TL;DR 这只是使用中间人方法解决问题而已,因为智能设备应用程序模板中没有可以处理 HTTPS 请求的函数。
我正在从事 Windows 智能设备项目。我想向 API 主机发送 HTTPS 请求以检索信息。
下面 link 中记录的当前代码在我对 Windows 表单应用程序的试用中完美运行:
但是,这在智能设备应用程序中不起作用,因为我无权访问智能设备项目上的 System.Net.Security
(实际上 System.Net
下只有 System.Net.Sockets
,使我无法对非 SSL 站点之外的查询使用相同的方法。
是否有相同解决方案能够发出 HTTPS 请求的解决方法?
编辑: 我知道 Google 地图是一个不好的例子,尤其是当它们的 API 密钥通常通过 HTTPS GET 方法不安全地发送并且最好使用服务器来保护请求。
找到了我自己问题的答案。
我可以创建一个 C++ 模块来处理 HTTPS 请求,然后使用 C# 的 pinvoke 方法调用 C++ 模块并return获取结果。
或者我可以使用制作一个像中间人一样处理 HTTP 请求的服务器,类似于 C++ 模块。此服务器代表智能设备应用程序向 return 结果发出 HTTPS 请求。
TL;DR 这只是使用中间人方法解决问题而已,因为智能设备应用程序模板中没有可以处理 HTTPS 请求的函数。