API nguồn cấp dữ liệu JSON của Blogger

Có thể đôi khi chúng ta cần một widget cho một số tính năng nhất định, nhưng các widget không có sẵn. Blogger đã cung cấp API để khắc phục điều này, vì vậy chúng tôi có thể tạo tiện ích của riêng mình bằng cách đọc nguồn cấp dữ liệu blog bằng JSON và JavaScript.
Đây là API nguồn cấp JSON:

VậtSự miêu tảThí dụ
json.feed.id. $ tHiển thị ID blogthẻ: blogger.com, 1999: blog-12345
json.feed.updated. $ tCập nhật lần cuối của một blog2013-07-08T18: 21: 57.051 + 07: 00
json.feed.c Category []Danh mục / mảng nhãn của blog
json.feed.c Category [i] .termHiển thị danh mục thứ iBlogger
json.feed.title. $ tHiển thị tên blogDanlog
json.feed.subtitle. $ tHiển thị mô tả của một blogWeblog của Dan
json.feed. Tác giả []Mảng tác giả blogĐà Nẵng Probo Sayekti, Matt Cutts
json.feed. Tác giả [i] .name. $ tHiển thị tên tác giả blog thứ iĐà Nẵng Pobo Sayekti
json.feed. Tác giả [i] .uri. $ tHiển thị hồ sơ i-th tác giả urihttps://profiles.google.com/123456789
json.feed.openSearch $ TotalResults. $ tHiển thị tổng số bài viết777
json.feed.entry []Mảng bài viết của một blog
json.feed.entry [i] .id. $ tHiển thị ID bài đăng thứ ithẻ: blogger.com, 1999: blog-8508.post-12345678
json.feed.entry [i] .title. $ tHiển thị tiêu đề bài viết thứ iAPI nguồn cấp dữ liệu JSON của Blogger
json.feed.entry [i]. đã được xuất bản. $ tHiển thị thời gian xuất bản của bài thứ i2013-07-07T12: 56: 00.000 + 07: 00
json.feed.entry [i] .updated. $ tHiển thị khi bài đăng thứ i được cập nhật2013-07-07T12: 56: 47.089 + 07: 00
json.feed.entry [i] .c Category []Hiển thị mảng các danh mục bài
json.feed.entry [i] .c Category [x] .termHiển thị danh mục x-th của bài đăng thứ iAPI Blogger
json.feed.entry [i] .summary. $ tHiển thị bài viết tóm tắtCó lẽ đôi khi chúng ta cần một widget ...
json.feed.entry [i] .content. $ tHiển thị nội dung bàiCó thể đôi khi chúng ta cần một widget cho một số tính năng nhất định, nhưng các widget không có sẵn ...
json.feed.entry [i] .link []Liên kết mảng của bài viết
json.feed.entry [i] .link [x] .hrefHiển thị liên kết x-th của bài đăng thứ ihttp://www.danpros.com/2013/08/blogger-api.html
json.feed.entry [i]. Tác giả []Mảng tác giả bài
json.feed.entry [i]. Tác giả [x] .name. $ tTên của tác giả x-th trên bài đăng thứ iĐà Nẵng Probo Sayekti
json.feed.entry [i]. Tác giả [x] .uri. $ tHiển thị hồ sơ tác giả urihttps://profiles.google.com/123456789
json.feed.entry [i]. Tác giả [x] .gd $ image.srcHình ảnh uri của hồ sơ tác giả x-th trên bài đăng thứ i//lh4.googleusercontent.com/photo.jpg
json.feed.entry [i] .media $ Thumb.urlHiển thị hình ảnh trên bài đăng thứ ihttp://3.bp.blogspot.com/danlogs.jpg
json.feed.entry [i] .thr $ tổng. $ tHiển thị tổng số ý kiến ​​luồng7
Dưới đây là một ví dụ thực hiện mã trên:
Giả sử tôi cần 5 bài đăng gần đây bởi một nhãn nhất định, nhãn tôi muốn hiển thị là "Blogger". Tôi lấy tiêu đề và tóm tắt của bài viết.
<script type="text/javascript">
  function mycallback(json) {
    for (var i = 0; i < json.feed.entry.length; i++) {
      for (var j = 0; j < json.feed.entry[i].link.length; j++) {
        if (json.feed.entry[i].link[j].rel == 'alternate') {
          var postUrl = json.feed.entry[i].link[j].href;
          break;
        }
      }
      var postTitle = json.feed.entry[i].title.$t;
      var postSummary = json.feed.entry[i].summary.$t;
      var item = '<div class="wrapper"><h3><a href=' + postUrl + '>' + postTitle + '</h3></a><p>' + postSummary + '</p></div>';
      document.write(item);
    }
  }
</script>
<script src="http://www.danpros.com/feeds/posts/summary/-/Blogger?max-results=5&alt=json-in-script&callback=mycallback"></script>
Lưu ý: chúng tôi cần hiểu rằng json.feed.entry [i] .summary. $ T chỉ khả dụng nếu chúng tôi lấy URL của nguồn cấp dữ liệu bằng cách sử dụng /feed/posts/summary thay vì sử dụng /feed/posts/default .
Bây giờ làm thế nào chúng ta có thể tạo một widget mà không cần đăng bài gần đây bởi một nhãn nhất định? Tiện ích này cũng chỉ hiển thị 90 ký tự trong bản tóm tắt. Sau đây là ví dụ:
<script type="text/javascript">
  function mycallback(json) {
    for (var i = 0; i < json.feed.entry.length; i++) {
      for (var j = 0; j < json.feed.entry[i].link.length; j++) {
        if (json.feed.entry[i].link[j].rel == 'alternate') {
          var postUrl = json.feed.entry[i].link[j].href;
          break;
        }
      }
      var postTitle = json.feed.entry[i].title.$t;
      var postAuthor = json.feed.entry[i].author[0].name.$t;
      var postSummary = json.feed.entry[i].summary.$t;
      var entryShort = postSummary.substring(0, 90);
      var entryEnd = entryShort.lastIndexOf(" ");
      var postContent = entryShort.substring(0, entryEnd) + '...';
      var item = '<div class="wrapper"><h3><a href=' + postUrl + '>' + postTitle + '</h3></a><span>'+ postAuthor + '</span><p>' + postContent + '</p></div>';
      document.write(item);
    }
  }
</script>
<script src="/feeds/posts/summary?orderby=published&max-results=5&alt=json-in-script&callback=mycallback"></script>

Đăng nhận xét

0 Nhận xét