日本語・English
難しいことを考えず、手軽に扱える。新しい Misskey API ライブラリ。
var io = new Misskey("misskey.io");
try
{
var user = await io.ApiAsync<Dictionary<string, object>>("users/show", new
{
userId = "7rkr2cvs0v",
});
Console.WriteLine(user["username"]); // Admin
}
catch (MisskeyApiException e)
{
// エラーオブジェクトがサーバーから返ってきた場合
Console.WriteLine("ユーザー情報の取得に失敗しました。");
}
catch (HttpException e)
{
// サーバーにて問題が発生している場合
Console.WriteLine(e.Message);
}
var miAuth = new MiAuth("misskey.io", "MissDeck", "https://missdeck.example.com/icon.png", null, Permission.All);
if (!miAuth.TryOpenBrowser())
{
Console.WriteLine("次のURLをお使いのウェブブラウザーで開き、認証を完了させてください。");
Console.WriteLine(miAuth.Url);
}
Console.WriteLine("認可が完了したら、ENTER キーを押してください。");
Console.ReadLine();
try
{
Misskey io = await miAuth.CheckAsync();
var i = io.ApiAsync<Dictionary<string, object>("i");
Console.WriteLine(user["username"]); // 認証したユーザーのユーザー名
}
catch (MisskeyApiException e)
{
// エラーオブジェクトがサーバーから返ってきた場合
Console.WriteLine("認可に失敗しました。");
}
catch (HttpException e)
{
// サーバーにて問題が発生している場合
Console.WriteLine(e.Message);
}
サポートしていません。(コントリビューションを歓迎します)
アプリを使用するたびにユーザーに認証させるのはあまり良くありません。Misskey クラスは、認証情報のインポート/エクスポートをサポートします。
// 単純なINI形式の文字列にシリアライズされる
// トークンなど機密情報が含まれるので、暗号化して保存すると良い
string serialized = misskey.Export();
// シリアライズした文字列から Misskey クラスのインスタンスを生成
Misskey m = Misskey.Import(serialized);
Coming soon