2016-11-23 132 views
1

我一直在閱讀關於如何嗅探,然後使用獲得的數據與封閉源代碼的互動多篇文章認證到火種最近的API。通過捲曲

我集中在火種API,因爲在我看來,充足的研究已經已經做就可以了,因此這將是容易學習。

http://ttcubicle.blogspot.com/2015/03/reverse-engineering-tinders-api.html http://ec2-52-42-144-243.us-west-2.compute.amazonaws.com/tinder/

g雖然我成功地嗅出我的手機上的火種應用程序,並通過小提琴手服務器之間的認證,我不能夠使用命令行上的捲曲真正模擬出登陸

-----以下是請求從手機發送到服務器---原因很明顯我改變了我的實際數據----

POST https://api.gotinder.com/auth HTTP/1.1 
platform: android 
User-Agent: Tinder Android Version 6.5.1 
os-version: 23 
Facebook-ID: 10151935000326599 
Accept-Language: en 
app-version: 1955 
Content-Type: application/json; charset=utf-8 
Content-Length: 257 
Host: api.gotinder.com 
Connection: Keep-Alive 
Accept-Encoding: gzip 
X-Auth-Token: ccXX9a-4a99c-4e32-8154-9b21asf5eec 

{"facebook_token":"EAfasfasfasfN6solZAh8M3kwxsP1JzF6OBDocdNUEyxd8tsVCN6kWZA6fArZB0T5dZArmdVvKAXUuQZCOtoVZBPasfzUMz9RfFoSpEifEVm7bAIspEerbLKRgW3DCpHHuxVyZApr1koAHhIjCGtxUZAAZAtDvTTbayrkF","facebook_id":"111111119","locale":"en"} 

我關於知識POST /頭,所有的這些東西還是有一點shacky(這就是爲什麼我試圖重新制定),但是從我瞭解,下一步應該是送的捲曲POST請求發送的X-驗證令牌在頭部和facebook_token等在數據部分。

是這樣的:

curl -H "Content-Type: application/json" -H "X-Auth-Token: cc5555a-499c-4e32-8154-9b25555ec" -d '{"facebook_token":"EAAGasdpsBAEzbJDJdcHXLjKpDjN6solZAh8M3kwxsP1JzF6OBDocdNUEyxd8tsVCN6kWZA6fArZB0T5dZArmdVvKAXUuQZCOtoVZBPZBMTUJzUMz9RfFoSpEifEVm7bAIspEerbLKRgW3DCpHHuxVyZApr1koAHhIjCGtxUZAAZA555TTbayrkF","facebook_id":"101519555326599","locale":"en"}' https://api.gotinder.com/auth 

但是,不管我怎麼改變周圍的參數,我總是得到ErrorCode的500或401我後仰。我能得到最大的是在服務器告訴我它excpects一個facebook_token(這顯然是在數據段發送)

有沒有人有這種問題的經驗?

謝謝

+0

是,即使允許? – luschn

+0

你是什麼意思? – frankBang

+0

我的意思是,我非常確定tinder不允許這樣做。或者是一個官方的API? – luschn

回答

0

我剛剛發現了phyton和... holyshit我愛上了!

payloadauth = {"facebook_token":"EAA xxxxxx 
    header1 = { 'platform': 'android','User-Agent': 'Tinder, 'X-Auth-Token':'cblabla 


    with requests.Session() as c: 
    response = c.post('https://api.gotinder.com/auth',data=payloadauth) 
    response = c.get('https://api.gotinder.com/recs/core?locale=en', headers=header1) 
    print(response.json()) 

四行代碼...