Skip to content

Latest commit

 

History

History
69 lines (64 loc) · 1.72 KB

README.md

File metadata and controls

69 lines (64 loc) · 1.72 KB

CHROME GAMES RANKING SERVER

Google Hackpair에 출품작인 Chrome Games Ranking Server 소스입니다.

HOW TO USE

클라이언트에서는 직접 URL을 사용하거나 static/ranking.js파일을 include 하여 'ranker' object를 사용하면 됩니다. 요청/응답의 모든 데이터 타입은 json타입으로 사용합니다. API테스트는 콘솔페이지에서 할 수 있습니다.

사용자의 새로운 기록을 추가할 때

USING API WITH URL

URL

POST http://cg-ranking.appspot.com/user/

PARAMS

{
	ranker:{
		game_name:[w+], 
		user_name:[w+], 
		score:[0-9]
	}
}

RESPONSE

{
	game_name:[w+], 
	user_name:[w+], 
	score:[0-9], 
	rank[0-9] // 현재 점수에 해당하는 랭킹
}

USING WITH LIBRARY

ranking.add(game_name, user_name, score, function(success, data) {
	data = JSON.parse(data)
	var ret = (success) ? ['rank:', data.rank, data.game_name, data.user_name, data.score].join(' ') : 'ERROR';
	console.log(ret);
});

게임별 TOP 랭커를 받아올 때

USING API WITH URL

URL

GET http://cg-ranking.appspot.com/top/<game_name>/<limit>

PARAMS

<game_name>: 지정된 게임의 이름
<limit>: 최대 갯수 TOP 100을 원하면 100으로 넘긴다.

RESPONSE

응답은 리스트 형대로 전달 됩니다. 순서는 score의 내림차순입니다.

[{
	game_name:[w+], 
	user_name:[w+], 
	score:[0-9], 
}]

USING WITH LIBRARY

ranking.top(game_name, max, function(success, data) {
	var data = JSON.parse(data)
		,	rankers = (!success) ? 'ERROR' : '';

	$.each(data, function(i, r) {
		rankers += [r.game_name, r.user_name, r.score, '\n'].join(' ')
	})

	console.log(rankers);
});