Saya ingin melakukan login ke steam melalui cs go lounge.
Proses login secara manual adalah :
1. Menekan tombol login akan mengalihkan ke situs web steam.
2.Isi nama pengguna dan kata sandi.
3.Jika ada otentikasi email Anda perlu memasukkan kode khusus yang Anda terima.
4.Ia kembali ke situs web dengan cookie token khusus.
Sekarang saya ingin tahu bagaimana saya bisa melakukan hal yang sama melalui node.js? Saya ingin mengakses data cs go lounge tetapi itu hanya tersedia jika Anda masuk.
Saya telah mencoba mengirimkan formulir dengan nama pengguna dan kata sandi saya, tetapi saya tidak mengerti tanggapan yang saya dapatkan:
var request = require('request');
var myJSONObject = {
"username" : "username",
"password" : "password",
};
request({
url: "https://steamcommunity.com/openid/login?openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&openid.mode=checkid_setup&openid.return_to=https%3A%2F%2Fcsgolounge.com%2Flogin&openid.realm=https%3A%2F%2Fcsgolounge.com&openid.ns.sreg=http%3A%2F%2Fopenid.net%2Fextensions%2Fsreg%2F1.1&openid.identity=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.claimed_id=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select",
method: "POST",
json: true,
body: myJSONObject
}, function (error, response, body){
console.log(response);
});
Tanggapan saya terlihat seperti:
{ _readableState:
{ objectMode: false,
highWaterMark: 16384,
buffer: [],
length: 0,
pipes: null,
pipesCount: 0,
flowing: true,
ended: true,
Saya melihat di halaman uap bahwa semua bidang ada dalam formulir (saya tahu cara mengirim POST dengan objek json) tetapi saya tidak tahu bidang apa yang harus dikirim, dan bagaimana menangani dua langkah login (nama pengguna pertama dan kata sandi lalu kode email).
Dan seterusnya..
Saya juga mencoba masuk dari chrome dan mengekstrak cookie dan menggunakannya di situs web, tetapi sekali lagi tidak berhasil
var requestify = require('requestify');
var cheerio = require("cheerio");
requestify.get('http://csgolounge.com/trade?t=99441462', {
cookies: {
"domain": "csgolounge.com",
"expirationDate": 1443870461.091163,
"hostOnly": true,
"httpOnly": false,
"name": "token",
"path": "/",
"secure": false,
"session": false,
"storeId": "0",
"value": "0be791e29ba5bd1d839cb4c69bca5ba4",
"id": 8
}
})
.then(function(response) {
var $ = cheerio.load(response.getBody());
console.log($(".buttonright").attr('href'));
}
);
Sejujurnya saya kehabisan ide, kecuali menyentuh setiap tombol secara manual dengan jquery.
Bantuan apa pun sangat kami hargai.