[問題] Websocket使用套件websocketpp

看板C_and_CPP (C/C++)作者 (我不是砲哥)時間1年前 (2023/08/01 16:25), 1年前編輯推噓0(002)
留言2則, 1人參與, 1年前最新討論串1/1
-- ※已找到問題,解釋寫在最後※ -- 開發平台(Platform): (Ex: Win10, Linux, ...) Linux Ubuntu 20.04 編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出) g++ 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) Websocketpp Boost Openssl 問題(Question): 為了開發連上加密貨幣交易所的websocket開始做功課 找到websocketpp這個套件的github提供範例程式且成功demo到未加密的階段 https://reurl.cc/EoNvd0 但在step7改成加密連線後卻在connect server時 得到回傳錯誤"Connection creation attempted failed" 餵入的資料(Input): connect wss://ws.kraken.com (加密貨幣交易所Kraken的websocket) 預期的正確結果(Expected Output): Websocket連線上,後續要輸入特定的json格式得到報價ticker 錯誤結果(Wrong Output): "Connection creation attempted failed" 程式碼(Code):(請善用置底文網頁, 記得排版,禁止使用圖檔) https://ideone.com/WewHMt 補充說明(Supplement): 經過追查問題應該是出在150行的m_endpoint.get_connection() 但查進去卻看不出來問題在哪 囧 另外看了記載error code的websocketpp/error.hpp裡面的註解也只寫 "Connection creation attempted failed" ------------------ Fixed: 某位大大提醒我 don't trust examples 並且隨口題點了幾個檢查的地方 最後是發現如果要用加密websocket要在connect之前set_tls_init_handler 我把他寫在connect之後了 難怪連線的時候被拒絕 FYI -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.220.68.81 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1690878327.A.312.html ※ 編輯: nepholi (61.220.68.81 臺灣), 08/01/2023 16:29:07

08/01 17:25, 1年前 , 1F
有參考過ccapi嗎 我記得它好像也有用到websocketpp
08/01 17:25, 1F

08/01 17:26, 1年前 , 2F
也有support Kraken
08/01 17:26, 2F
感謝 迫於時程我只能繼續看已經完成8成左右的websocketpp 但也有資深的大大建議我去看看ccapi 之後有空會看看 ※ 編輯: nepholi (61.220.68.81 臺灣), 08/01/2023 17:29:40
文章代碼(AID): #1aoC5tCI (C_and_CPP)
文章代碼(AID): #1aoC5tCI (C_and_CPP)