今天重構了客戶端的Socks5實現部分,花了很多時間,重構完成發現程序無法運行,最後花了一上午時間找,還是沒找到原因,最後重新拉去了一份沒有重構的代碼,發現是依賴版本的原因導致無法運行,這個太tmd坑了。

剩下是寫Rust的通信數據包的協議部分,Rust很長時間都沒有寫了,倒是稍微有點生疏。

中間寫封裝數據包邏輯的時候爆出一個編譯器不知道數據大小,平時如果是結構體包這個錯都是用一個智能指針直接封裝就完事,但是這次用的是切片。

後面查了才知道是因為,Rust無法直接使用沒有聲明長度的切片,只能使用切片的引用。後面我把切片全都定長了,算是解決了這個問題。

明天的任務大概就是編寫客戶端的通訊部分和連接池的管理部分。

這部分寫好差不多程序本體就完工了,後面都是一些交互部分的邏輯。