基於Corova的博客園APP

来源:http://www.cnblogs.com/FourLeafCloverZc/archive/2016/12/07/6143139.html
-Advertisement-
Play Games

背景: 自從今年下半年接觸一個基於ReactJS 的手機APP項目。開始瞭解到了Corodva這個神奇的東西。後續自己也自作了一些小的APP放到了應用寶上。8月份開始想做一個博客園APP。於是就私聊博客園團隊申請了博客園API訪問許可權(當然其實應用寶裡面也有博客園APP了。而且用fiddler抓取了 ...


       背景: 自從今年下半年接觸一個基於ReactJS 的手機APP項目。開始瞭解到了Corodva這個神奇的東西。後續自己也自作了一些小的APP放到了應用寶上。8月份開始想做一個博客園APP。於是就私聊博客園團隊申請了博客園API訪問許可權(當然其實應用寶裡面也有博客園APP了。而且用fiddler抓取了一下。發現API還很完善。說實話比博客園團隊提供的API完善多了。我想應該是開發者用爬蟲軟體爬的頁面然後自己解析的吧。)

       第一步: 申請API:

        私聊博客園,獲取了OAuth的ClientId和ClientSerect。

           

        第二步: 調用API:

         以前沒用過OAuth2.0,然後惡補了一下OAuth2.0的知識。這裡就不介紹具體概覽了。就來看看怎麼去掉用API。我選擇的工具是Postman(自我感覺一款不錯的Chrome擴展),當然需要FQ了。

        下麵測試新聞的鏈接. Type選擇OAuth2.0

        

         博客園的OAuth2.0的Token地址是https://api.cnblogs.com/token 地址. 獲取後會返回token和expiretime,然後點擊UserToken就可以訪問了.

          

         

          第三步: 技術選擇

               本次項目只是作為個人業餘練習,想學習一下Angular2, 再加上Ionic是一款不錯的框架。而且也出來了Ionic2的beta版本。(Ionic因該是迄今為止與Angular合作最好的H5 APP框架了吧,個人認為)。所以果斷選擇Ionic2來開發。Ionic2的風格我也很喜歡。

          第四步: 開發階段

               開發都是用的這個月的業餘時間,雖然API很早就申請了。前面公司有其他項目一直沒時間做。剛好本月有空就在上班業餘時間完成了這個小APP第一版。

               此處省略一大波不好的代碼(因為前期的對Angular2的不熟,代碼結構很亂.)

          第五: 產品展示:

                功能點: 1. 支持新聞和博客的查詢。支持分享,評論。點擊頭像進入博主空間查看博客文章

                                  

              第六: 遇到的坑

                      1. Ionic2不熟悉,Angular2不熟悉, 需要花時間去看API

                      2. 以前在美國某蛋電商成都分公司上班主要做.net後端系統做得多。雖然現在在某海淘小公司從事前端。JS功底還是比較自信(因為感覺跟C#沒啥區別,尤其是現在的typescript)。可是對於一個不愛畫畫的男IT。連PS都不會的, CSS 功底太差(因為現在的公司有專門寫HTML和css的UI妹紙)。有的地方還是要用到css比如列表的tab是自己寫的。雖然只需要10多行css不過自己還是花了很多時間 。包括Logo還是擺脫UI妹紙花幾分鐘弄點(可是我自己估計要弄很久)

                      3. 對OAuth不熟悉,去瞭解OAuth還是花了一些時間。

                      4.本地開發瀏覽器localhost服務跨越調試很不方便。對於博客園的非登錄API 瀏覽器localhost設置代理是可以解決跨越問題的。可是有關登錄。比如評論功能就卡了很長一段時間。在調用了登錄API後。返回了True,Response的header裡面也返回回來的登錄後的cookie. 可是在調用評論介面的時候header裡面的cookie就丟失了,然後博客園服務端就返回提示信息(用戶未登錄)。不過在打包成APP在手機裡面後是正常的。個人認為是因為登錄和評論API不是一個基地址。而在localhost訪問的時候我給瀏覽器設置了兩個代理。

 

             第七:總結

       用一個月的零碎時間搞了這麼一個小玩意。代碼我自己都在吐槽,確實有很多問題。後面有空會考慮再做一個CNode的客戶端。看了CNode提供的API,相對要比博客園更合理。到時候會好好設計一下項目結構。再做代碼分享吧。

                       https://github.com/FourLeafClover/CNBlogApp

                       由於版權問題,應用寶上架提示我侵權。雖然我已經把申請博客園的聊天記錄發給了客服還是不行。所以博客打包後的APP 我會放到github上。家裡的台式沒有開發環境。等明天到了公司在把APP放到github上。(不多說了。看會兒電視就洗洗睡睡了。)

                       這裡在推薦一個給予RN(React native)的博客園APP,確實不錯。UI和流暢度都很好。忘記是哪位博友做的。只是無意間在一個博客評論裡面看見是一個博友做的。        

                        http://sj.qq.com/myapp/detail.htm?apkName=com.google.android.apps.blogger

 

         


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 常見的位元組序(Endianness)主要有大端(big-endian)和小端(little-endian)兩種。big-endian **大**在高位元組(most significant byte)放在記憶體的低地址,little-endian **小**在低位元組(least significant ... ...
  • 隨著**CPU速度**的不斷提高和**軟體規模**的不斷擴大,人們當然希望存儲器能同時滿足**速度快、容量大、價格低**的要求。但實際上這一點很難辦到,解決這一問題的較好方法是設計一個**快慢搭配**、具有層次結構的存儲系統。 ...
  • 摘要: 介紹各平臺下的圖形化界面git客戶端(本人並沒有全部使用過),歡迎大家補充新的軟體或者使用感受~ 一、TortoiseGit - The coolest Interface to Git Version Control TortoiseGit 是 TortoiseSVN 的 Git 版本,T ...
  • 1、nginx相對於apache的優點: 輕量級,同樣起web 服務,比apache 占用更少的記憶體及資源 抗併發,nginx 處理請求是非同步非阻塞的,而apache 則是阻塞型的,在高併發下nginx 能保持低資源低消耗高性能 高度模塊化的設計,編寫模塊相對簡單 社區活躍,各種高性能模塊出品迅速啊 ...
  • 最近因公司項目原因,去了趟昆明出差,其中第一次接觸安裝redis,配置sentinel,學習到不少,但也都是皮毛而已,本隨筆記下所學知識。 1、首先介紹下redis,來源自百度百科 redis是一個key-value存儲系統。和Memcached類似,它支持存儲的value類型相對更多,包括stri ...
  • 剛學了js的一些函數,所以做了一個太極的旋轉。做完之後是上面這個樣子的,是可以旋轉的。 思路: 1.先做一個基準轉盤,之後將元素都放在轉盤上,跟隨轉盤動。 2.畫兩個半圓,主要屬性是border-top-right-radius: 250px; 像素值為長邊的一半。 3.然後畫4個圓,以基準轉盤為父 ...
  • JavaScript組成: ECMAscript 瀏覽器對象模型 BOM 文檔對象模型 DOM // ecmascript bom dom dom (文檔對象模型) 用來訪問和操縱html文檔 bom (瀏覽器對象模型) js 是瀏覽器語言 JavaScript引入: 1 <script src=“ ...
  • 背景(background)是css中很重要的一部分,也是css的基礎知道之一,現在來回顧css2中5個屬性與css3中新增的3個屬性和2個功能。 CSS2_背景(background)前傳 家族成員 背景(background)家族在css2中由5個主要的背景屬性組成,分別是: 想知道家族五大成員 ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...