読者です 読者をやめる 読者になる 読者になる

だるろぐ

とてもだるだるした日記です http://about.daruyanagi.jp/

お知らせ

はてなブログが oEmbed に対応したらしいので WebMatrix で使ってみる

WebMatrix

f:id:daruyanagi:20140908003018p:plain

せっかくなので、WebMatrix のヘルパーにしてトップページでも使ってみた。

# ~/App_Code/OEmbed.cshtml

@helper Hatena (string url) {
    try
    {
        using (var downloader = new WebClient())
        {
            var request = string.Format(
                "http://hatenablog.com/oembed?url={0}&format={1}",
                url, "json"
            );

            var oembed_data = downloader.DownloadString(request);
            var oembed_json = Json.Decode(oembed_data);

            @Html.Raw(oembed_json.html);

            // @ObjectInfo.Print(oembed_json)
        }
    }
    catch (Exception e)
    {
        <p class='error'>@url: @e.Message</p>
    }
}

使い方はこんな感じ。ちゃんと運用するなら WebCache とか使って少し高速化してみるのもいいかもしれない。

@OEmbed.Hatena("http://daruyanagi.jp/entry/2014/07/03/035624")

f:id:daruyanagi:20140908003132p:plain

はてなブログのところだけデザインがカッコよくて違和感があるけれど、まぁ、とりあえずこれで。

f:id:daruyanagi:20140908003322p:plain

@ObjectInfo.Print() を有効化してみると JSON でもらえる値がわかるので、これを利用して周りにフィットするようにダサくカードをデザインし直してもいいな(何