003 精弘iOS/Android/WP用戶端

來源:互聯網
上載者:User

標籤:android   discuz   style   http   color   io   os   ar   for   

我是一樓:

想做iOS用戶端這個念頭,有了幾個月了,這個禮拜一辭了實習工作,跑回來做iOS用戶端的開發,已經是第四天了。為嘛要做這個呢,因為現在的用戶端是在是太挫我覺得有點看不下去...而且點擊圖片牆就閃退有木有...傳說還有廣告(我沒發現..)。
剛開始,纏著墨魚問有沒有API,墨魚說沒有...

好吧,然後我嘗試著看HTML原始碼...準備在用戶端解析HTML中的內容,然後擷取地址和各種文章資訊(標題,發帖人等等)來進入文章,然後通過POST類比電腦端的操作來實現發帖等功能,但是。HTML的內容是這樣的:

<td class="icn" style="padding-left:10px;">
<a href="http://bbs.zjut.edu.cn/forum.php?mod=viewthread&tid=1625794&extra=page%3D1" title="新視窗開啟" target="_blank">
<img src="template/yeei_dream1/css/yeei//folder_common.gif" />
</a>
</td>
<th class="common" style="padding-left:8px;">
<em>[<a href="http://bbs.zjut.edu.cn/forum.php?mod=forumdisplay&fid=465&filter=typeid&typeid=71">求助</a>]</em> <a href="http://bbs.zjut.edu.cn/forum.php?mod=viewthread&tid=1625794&extra=page%3D1" onclick="atarget(this)" class="xst" >電影雙語如何切換音頻啊?菜鳥求助啊</a>
</th>
<td class="by">
<cite>
<a href="http://bbs.zjut.edu.cn/home.php?mod=space&uid=183630" c="1">月辰弋羽</a></cite>
<em><span>2014-9-7</span></em>
</td>
<td class="num"><a href="http://bbs.zjut.edu.cn/forum.php?mod=viewthread&tid=1625794&extra=page%3D1" class="xi2">4</a><em>48</em></td>
<td class="by" style="padding-right:10px">
<cite><a href="http://bbs.zjut.edu.cn/home.php?mod=space&username=%E6%B3%89%E5%88%9D%E5%85%89" c="1">泉初光</a></cite>
<em><a href="http://bbs.zjut.edu.cn/forum.php?mod=redirect&tid=1625794&goto=lastpost#lastpost"><span title="2014-9-12 16:59">6 天前</span></a></em>
</td>
</tr>

WT* is this!用正則抓取也顯得煩瑣(樓主菜),而且在手機上開啟一個網頁就是幾百K顯然不是太好的(考慮這麼多用移動的孩子還停留在EDGE...)。

然後我想到了iOS用戶端。iOS用戶端難道也是通過這種愚蠢的方式的嗎!就沒有正常人類用的JSON來傳輸資料、負責互動嗎!於是樓主祭出神奇Charles,開啟抓包,用手機登上用戶端:登入...抓包...結果如下

 

     然後傳回值如下

 

{
    "secret": "2a113ad6cfadce314a60a79d33cb7", 
    "token": "8a7e56597e8b55881c67b1cb28b1b", 
    "uid": 273684, 
    "avatar": "http://center.zjut.com/images/noavatar_middle.gif", 
    "fid": 1, 
    "rs": 1, 
    "counts": null
}

               這就是我們想要的東西啊(墨魚說沒有API....)!試想一下有了這個東西,假如我們在任何用戶端需要登入,我們只要根據(需要寫的API就是這樣子的,當然還需要說明欄)

參數 變數
appName 精弘論壇
email iosapp(使用者名稱)
forumKey CIuLQ1lkdPtOlhNuV4
forumType 7
packageName com.mobcent.newforum.app82036
password 我是密碼
platType 5
sdkType 1
sdkVersion 2.0.0


在用戶端發起請求:

<font color="#0000ff">http://bbs.zjut.edu.cn/mobcent/login/login.php</font>?<font color="#0000ff">forumType</font>=7&<font color="#0000ff">forumKey</font>=CIuLQ1lkdPtOlhNuV4&<font color="#0000ff">sdkType</font>=1&<font color="#0000ff">packageName</font>=com.mobcent.newforum.app82036&<font color="#0000ff">platType</font>=5&<font color="#0000ff">appName</font>=%E7%B2%BE%E5%BC%98%E8%AE%BA%E5%9D%9B&<font color="#ff0000">email</font>=<font color="#ff0000">帳號</font>&<font color="#0000ff">sdkVersion</font>=2.0.0&<font color="#ff0000">password</font>=<font color="#ff0000">我是密碼</font>

就能夠擷取到以上的JSON,而有了"secret": "", "token": "", 後續的任何發帖之類的操作,我們才可以進行(作為參數傳遞)。

如果能得到現有APP的這套API,那麼我們就可以實現所有現有的功能了...有同學會問:已經有了幹嘛再實現一遍...?...因為現在的APP(iOS)開啟圖片多的文章閃退(沒有經過圖片壓縮),文章沒有緩衝(開啟比較慢),而且介面沒辦法定製,更沒法擴充...這個APP的來頭的話,是安米網:http://www.appbyme.com/mobcentACA/index.html 
當然這不是一個開源的用戶端(否則怎麼加入廣告賺錢),API顯然不公開...

樓主不是很懂後端,不懂discuz (php寫的?)加入一個外掛程式,然後寫一套自己的API工作量是怎麼樣子的(還有難度)...但是如果想要完全自主,這肯定是一種更好的方法。
當然樓主現在正在第二條路上,整理安米產生的用戶端的API,如果可以整理這麼一套API,無論iOS、Android還是WP,只有有人願意做,我們都可以做出用戶端來。

樓主現在正在做iOS用戶端,進度可以在 https://github.com/DikeyKing/jinghong 上看到(剛剛實現完登入...)
如果,選擇走第二條路,那現在很需要人去整理出這套API。


003 精弘iOS/Android/WP用戶端

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.