index.js
4.36 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
module.exports = function(app)
{
var request = require("request");
var urlenconde = require('urlencode');
var apikey = "RGAPI-6c3f9604-21ff-4f23-a1c1-ab0138773f16";
var id; //소환사ID
var accountId; //계정ID
var puuid; //특정ID
var name; //소환사이름
var profileIconId; //소환사아이콘ID
var summonerLevel; //소환사 레벨
var revisionDate; //수정날짜
var winning_rate; //승률
var leagueId; //리그ID
var tier = ""; //티어
var rank = "Unranked"; //랭크
var wins = 0; //이긴 수
var losses = 0; //진 수
var leaguePoints = league_json['leaguePoints'];
app.get('/', function(req,res) {
res.render('main', {title: 'Chess'});
});
app.get('search/:username/', function(req,res,next){
name = req.params.username;
var summonerUrl = "https://kr.api.riotgames.comGET /tft/summoner/v1/summoners/by-name/" + urlenconde(name) + '?api_key=' + apikey;
request(summonerUrl,function(err,res,body){
console.log(res.statusCode);
if(res.statusCode != 200) {
console.log("Error ", res.statusCode);
res.setEncoding();
return;
}
var summoner_json = JSON.parse(body);
id = summoner_json['id'];
accountId = summoner_json['accountId'];
puuid = summoner_json['puuid'];
name = summoner_json['name'];
profileIconId = summoner_json['profileIconId'];
summonerLevel = summoner_json['summonerLevel'];
revisionDate = summoner_json['revisionDate'];
var leagueUrl = "https://kr.api.riotgames.com/tft/league/v1/entries/by-summoner/" + urlenconde(id) + '?api_key=' + apikey;
request(leagueUrl, function(err,res,body){
league_json = JSON.parse(body);
leagueId = league_json[0]['leagueId'];
tier = league_json[0]['tier'];
rank = league_json[0]['rank'];
wins = league_json[0]['wins'];
losses = league_json[0]['losses'];
leaguePoints = league_json[0]['leaguePoints'];
winning_rate = Math.round((wins/(wins + losses)) *100);
var img_tier;
if(tier == "Challenger") {
img_tier = './images/Emblem/Challenger_Emblem.png';
}else if(tier == "Grandmaster") {
img_tier = './images/Emblem/Grandmaster_Emblem.png';
}else if(tier == "Master") {
img_tier = './images/Emblem/Master_Emblem.png';
}else if(tier == "Diamond") {
img_tier = './images/Emblem/Diamond_Emblem.png';
}else if(tier == "Platinum") {
img_tier = './images/Emblem/Platinum_Emblem.png';
}else if(tier == "Glod") {
img_tier = './images/Emblem/Glod_Emblem.png';
}else if(tier == "Silver") {
img_tier = './images/Emblem/Silver_Emblem.png';
}else if(tier == "Bronze") {
img_tier = './images/Emblem/Bronze_Emblem.png';
}else if(tier == "Iron") {
img_tier = './images/Emblem/Iron_Emblem.png';
}else {
img_tier = './images/Emblem/Unranked.png';
}
var matchUrl = "https://asia.api.riotgames.com/tft/match/v1/matches/by-puuid/" + urlenconde(puuid) + "/ids?count="+(wins+losses)+"&api_key="+apikey;
request(matchUrl, function(err,res,body){
var match_json = JSON.parse(body);
var matchId = new Array();
var participants = new Array(); //참가자
var placement = new Array(); //참가자 순위
var time_eliminated = new Array(); //참가자 참여시간
var traits = new Array(new Array()); //시너지
var traits_num = new Array(new Array()); //시너지갯수
var units = new Array(new Array()); //챔피언
var units_tier = new Array(new Array()); //챔피언 레벨
var units_item = new Array(new Array()); //챔피언 아이템
});
});
});
});
}