關於網路連線問題前期一直失敗的原因

2022-07-17 12:24:12 字數 731 閱讀 3033

最開始一直失敗是因為在login傳送post指令時沒有加入任何有關訪問許可權的**,在研究過學長的oc**之後,

發現他在init的時候獲取了伺服器cookie,並從cookie中提取出來csrftoken,並在login的時候加到訪問的頭部,作為

許可權的標記。我經過嘗試之後終於獲取到了cookie,並將csrftoken加入httpurlconnection的頭部,結果還是返回

403,我們在這裡出現了好長時間的卡頓。

之後經過學姐的幫忙,終於明白了csrftoken並不是唯一的許可權標識,而是需要將init得到的全部cookie加入到login

訪問伺服器的httpclient的頭部,才能完成訪問。二者的區別通俗點來講相當於兩個人訪問乙個伺服器,兩個人分別用a

和b表示,a負責init,b負責login。第一種方法好比a先初始化得到了訪問許可權的cookie,之後將得到的token交給b,

然後b拿著從a獲得的token去訪問,故伺服器識別為許可權不夠。而第二種方法則相當於,a先初始化得到了訪問許可權的

cookie,然後將所得到的全部cookie包括token全部交給b,此時b相當於是a的複製,也就是相當於a再次去訪問服務

器,故此時服務認為b擁有訪問許可權。(ps:本來以為httpurlconnection與httpclient傳送資料的格式不同,故開始

是用httpurlconnection傳送post指令,後來發現二者執行效果是等價的,故之後換用httpclient實現post請求)。 

rosdep update 一直失敗問題

1.排除網路問題 更改 usr lib python2.7 dist packages rosdep2 下的三個檔案sources list.py gbpdistro support.py rep3.py 中的download timeout 15.0值,改大一點就可以了。sudo vim usr ...

關於網路連線CLOSE WAIT狀態的問題

問題背景 在開發網路伺服器應用系統的時候,有時會碰到伺服器有大量的socket處於close wait狀態,也無法關閉,導致伺服器無法接受新的使用者請求,最終導致伺服器奔潰,系統重啟才能解決。為什麼會出現大量的close wait狀態呢?要解決這個問題,我們得先介紹一下socket斷開過程中的四次揮...

mysqld 一直starting 的問題

今天開啟虛擬機器上的centos,發現啟動mysqld的時候,它一直處在starting.等了n久還沒起起來,也不failure。無奈,進不了系統,在網上也搜不到跟我相似的狀況。重啟,在grub介面改用單使用者模式 也就是方式1 進系統 被逼的。之後嘗試手動service mysqld start,...