2013-10-08 5 views
6

彼のニックネームでユーザーのsteamIDを取得することは可能ですか?私は蒸気APIのドキュメントで解決策を見つけられませんでした。私が見つけた唯一の事はhttp://dev.dota2.com上の古い記事です:ユーザーのニックネームでsteamIDを取得

あなたは直接あなたは、リストでその32ビットのIDを見つけることができますGetMatchHistory のPLAYER_NAMEのオプションを使用してDOTA2のAPIを検索するためにこれを使用することができますし、それを64ビットIDに変換します。

ただし、GetMatchHistoryの機能には、player_nameパラメータがありません。今度はaccount_idが必要です。

したがって、http://dotabuff.com/search?q=Dendiのようなウェブサイトはこの情報をどのように取得しますか?

答えて

8
を使用でき

はスチームプロフィールのカスタムURLからSteamIDを取得するためにhttp://api.steampowered.com/ISteamUser/ResolveVanityURL/v0001/

をGET。 http://wiki.teamfortress.com/wiki/WebAPI/ResolveVanityURL

ニックネームが変更される可能性があり、一意ではないため、誰かの現在のニックネームからsteamIDを取得することはできません。

+0

小さな付録:ニックネームと同じように、カスタムURLも変更できます。しかし、カスタムURLはユニークであるため、「2人のプレーヤーがURLを入れ替えたらどうなるでしょうか?」などのケースを処理する必要があります。 –

-6

これはSteam Web APIから読んだことがありますか?

https://developer.valvesoftware.com/wiki/Steam_Web_API#GetPlayerSummaries_.28v0002.29

は、それは他の情報を収集するために、ユーザーのスチームIDを返すためにも、いくつかの他の引数を蒸気プロフィールのURLを使用する例があります。

あなたはそこから少しダウン読めば、それは「どんなスチームユーザー

例URLの友達リストを返します:http://api.steampowered.com/ISteamUser/GetFriendList/v0001/?key=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&steamid=76561197960435530&relationship=friend」と述べているプロファイル情報が返されるため

  • あなたは引数を追加することができますがプロファイルを提供するスチームIDが公開されているなどです。
+5

はい。この関数は 'steamids'パラメータを必要とします。蒸気IDのセットです。ニックネームではありません。 –

1

PHPとSteam Condenserプロジェクトを使用すると、これを達成できます。

require_once('steam/steam-condenser.php'); 

$playername = 'NAMEOFPLAYER'; 
try 
{ 
    $id = SteamId::create($playername); 
} 
catch (SteamCondenserException $s) 
{ 
    // Error occurred 
} 

echo $id->getSteamId; 

さらに詳しい情報が必要な場合は、プロジェクトのwikiにusage examplesがあります。

+0

これはもう可能ではないと思います。D –

関連する問題