无法获得tumblr饲料出现

时间:2015-03-19 21:01:50

标签: tumblr api-key

这是我用来将我的tumblr博客文章流式传输到我的网站的脚本,我有正确的API密钥和基本主机名,但仍然没有出现。还有其他一些我要绕过的信息吗?任何帮助将不胜感激。

<script type="text/javascript">
    var $_api_key           = 'PhLtoFx1aCBtu9IG3pIuT9BPd0Vxb602nPZtdMKxHvHM89VH28',
        $_base_hostname     = 'http://amongtheprimeblog.tumblr.com',
        $_full_width        = 1170;
        $_rows              = 2
        $_cols              = 3;
        $_min_width         = $_full_width / $_cols,
        $_nsfw_tag          = 'nsfw';
        $_display_limit     = $_rows * $_cols,
        $_post_limit        = $_display_limit * 2,
        $_photos_api        = 'https://api.tumblr.com/v2/blog/'+$_base_hostname+'/posts/photo?limit='+$_post_limit+'&api_key='+$_api_key,

    jQuery.ajax($_photos_api,
        {
            dataType: 'jsonp',
            success: function ($_posts) {

                //console.log($_posts);
                var $_photos    = [],
                    $_displayed = 0 ;
                for(var i=0; i < $_post_limit; i++) {

                    var $_post_url              = $_posts.response.posts[i].post_url.replace('http://','https://'),
                        $_tag_count             = $_posts.response.posts[i].tags.length,
                        $_photo_count           = $_posts.response.posts[i].photos[0].alt_sizes.length,
                        $_post_photo_big        = $_posts.response.posts[i].photos[0].original_size.url.replace('http://','https://'),
                        $_post_photo_big_width  = $_posts.response.posts[i].photos[0].original_size.width,
                        $_post_photo_big_height = $_posts.response.posts[i].photos[0].original_size.height,
                        $_can_display           = true;

                    // Check NSFW to keep Adroll happy! 
                    for (var k=0; k < $_tag_count; k++ ){
                        if($_posts.response.posts[i].tags[k] == $_nsfw_tag) {
                            $_can_display = false;
                        }
                    }

                    // Iterate for most suitable image size.
                    if($_can_display) {
                        for (var j=0; j < $_photo_count; j++ ) {
                            if($_posts.response.posts[i].photos[0].alt_sizes[j].width > $_min_width) {
                                $_post_photo    = $_posts.response.posts[i].photos[0].alt_sizes[j].url.replace('http://','https://');
                            } else {
                                break;
                            }
                        }

                        $_photos.push('<a id="tumblr_'+i+'" class="tumblr_post" href="'+$_post_url+'" target="_blank" data-src-big="'+$_post_photo_big+'" data-src-big-width="'+$_post_photo_big_width+'" data-src-big-height="'+$_post_photo_big_height+'"><img src="'+$_post_photo+'"/></a>');

                        $_displayed++;
                        if( $_displayed == $_display_limit) {
                            break;
                        }
                    }

                }
                jQuery('#tumblr_images').html($_photos.join(''));
            },
        }
    );

    function loadTumblrModal(id) {
        var $_post              = jQuery('#'+id),
            $_post_next         = $_post.next('.tumblr_post').attr('id'),
            $_post_prev         = $_post.prev('.tumblr_post').attr('id'),
            $_post_link         = $_post.attr('href'),                  
            $_modal             = jQuery('#tumblrModal'),
            $_post_photo_src    = $_post.attr('data-src-big').replace('http://','https://'),
            $_post_photo_height = parseInt($_post.attr('data-src-big-height')),
            $_post_photo_width  = parseInt($_post.attr('data-src-big-width')),
            $_post_photo_ratio  = $_post_photo_width / $_post_photo_height,
            $_window_height     = jQuery(window).height(),
            $_dialog_padding    = 20,
            $_dialog_margin     = 20,
            $_dialog_height     = jQuery(window).height() - ($_dialog_margin * 2),
            $_follow_iframe     = '<iframe class="follow-button " src="https://platform.tumblr.com/v1/follow_button.html?button_type=1&amp;tumblelog=theiloveuglyblog&amp;color_scheme=dark" frameborder="0" scrolling="no" width="118" height="25"></iframe>';

        // Re-Calibrate Dialog if Image is smaller than Window
        if($_post_photo_height < $_dialog_height) {
            $_dialog_height     = $_post_photo_height;
        }

        // Set Dialog & Image Dimensions
        var $_image_height      = $_dialog_height - ($_dialog_padding *2),
            $_image_width       = $_image_height * $_post_photo_ratio,
            $_dialog_width      = $_image_width + ($_dialog_padding * 2);

        // Force First/Last if Undefined for Next/Prev. Creates looping
        if(typeof $_post_next === 'undefined') {
            $_post_next = $_post.parent().find('.tumblr_post').first().attr('id');
        }
        if(typeof $_post_prev === 'undefined') {
            $_post_prev = $_post.parent().find('.tumblr_post').last().attr('id');
        }

        // FireUp all the Modal
        $_modal.find('.modal-dialog').css({
            "width"         : $_dialog_width + 'px',
            "height"        : $_dialog_height + 'px',
            "margin-left"   : -($_dialog_width/2) + 'px',
            "margin-top"    : -($_dialog_height/2) + 'px',
        });
        $_modal.find('.tumblr_img').html('<a href="'+$_post_link+'" target="_blank"><img src="'+$_post_photo_src+'" width="'+$_image_width+'" height="'+$_image_height+'"/></a>');
        $_modal.find('.tumblr_iframe').html($_follow_iframe);
        $_modal.find('#tumblr-next').attr('data-id',$_post_next);
        $_modal.find('#tumblr-prev').attr('data-id',$_post_prev);
    }

    jQuery('#tumblr_images').on('click','a',function(e){
        var $_modal             = jQuery('#tumblrModal');
        e.preventDefault();
        loadTumblrModal(jQuery(this).attr('id'));   
        $_modal.modal('show');      
    });

    jQuery(document).on('click','.tumblrLink',function(e){
        loadTumblrModal(jQuery(this).attr('data-id'));          
    });

    </script>

0 个答案:

没有答案