Board logo

標題: 唔用 .net 內建的 Webclient Webrequest, 有咩第三方Package 好用 [打印本頁]

作者: kamcm    時間: 2021-2-11 19:49     標題: 唔用 .net 內建的 Webclient Webrequest, 有咩第三方Package 好用

本帖最後由 kamcm 於 2021-2-19 18:16 編輯

最近小弟遇上一個問題...
就係如果唔用 .net  內建的 Webclient Webrequest, 仲有咩第三方Package 好用?

現時用緊Libcurl, 但我想搵果係有人maintain 緊的, 最好同時Support VB.net 的.  

之所以有呢個要求係因為要連上的API Server 有些奇葩的設定.
而.net 的預設的 SSL cipher suites 係跟Windows 版本的,
一旦對家Server 係用WIN7 唔Support 的cipher suites ,
你用Win7, WIN 8.1就會連唔到上去, 而WIN10 就正常.
搵第三方方案去連API就唔駛比Windows 版本食住 cipher suites 而連唔到某些API.

請推介, 先謝謝了.
作者: KinChungE    時間: 2021-2-11 21:04

你首先要講API Server要用邊D Cipher
而且仲有係睇睇會唔會只係你target左舊版.NET Framework, 轉新版.NET Framework就解決

正常cipher suite係自動detect, 認到邊款兩方都support就識用
認唔到未必代表要第三方方案, 可能只係你.NET Framework舊
作者: kamcm    時間: 2021-2-11 21:23

本帖最後由 kamcm 於 2021-2-11 21:33 編輯
你首先要講API Server要用邊D Cipher
而且仲有係睇睇會唔會只係你target左舊版.NET Framework, 轉新 ...
KinChungE 發表於 2021-2-11 21:04


我原本只用舊版 VS 2005, VS 2008,
為左搞呢個裝哂新版 VS2015, VS2017, VS2019 去試,  但最新的Framework 去試都係一樣...

玩左一大餐, 最後先知係cipher suites 問題
已知對方Server 係Supports
tls_ecdhe_rsa_with_aes_128_gcm_sha256

但要Windows 2016 或WIN10 先有呢個
WIN7 同WIN 8.1 都唔Support.

https://docs.microsoft.com/en-us ... ws-10--version-1507
所以如果想整到果.net Program 在WIN7 同WIN 8.1 都能正常RUN到, 就只要用第三方元件去做先得..
作者: KinChungE    時間: 2021-2-11 21:24

Tls 2.0下.佢Support
tls_ecdhe_rsa_with_aes_128_gcm_sha256
但要Windows 2016 或WIN10 先有呢個
WIN7  ...
kamcm 發表於 2021-2-11 21:23


Win7冇計, 本身得.NET Framework 3.5 (TLS 1.1)
作者: kamcm    時間: 2021-2-11 21:31

本帖最後由 kamcm 於 2021-2-11 23:46 編輯
Win7冇計, 本身得.NET Framework 3.5 (TLS 1.1)
KinChungE 發表於 2021-2-11 21:24


新Framework 都沒用...因為用.net 內置的WebRequest, httpclient 等等最後連唔連到對方Server 係睇番Windows 版本的cipher suites 是否Supports .tls_ecdhe_rsa_with_aes_128_gcm_sha256..

所以我先會用LibCurl 去做..用第三方可以 By pass 左 M$ 的 cipher suites.
但LibCurl Document 唔齊全...有點惡用.. 同埋好多年冇更新過了..
所以想問問有經驗的高手仲有邊D 替代品更好用? 請推介

Thanks





歡迎光臨 電腦領域 HKEPC Hardware (https://www.hkepc.com/forum/) Powered by Discuz! 7.2