热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

基于Corova的博客园APP

背景: 自从今年下半年接触一个基于ReactJS的手机APP项目。开始了解到了Corodva这个神奇的东西。后续自己也自作了一些小的APP放到了应用宝上。8月份开始想做一个博客园A

       背景: 自从今年下半年接触一个基于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

基于Corova的博客园APP


推荐阅读
  • REST API 时代落幕,GraphQL 持续引领未来
    尽管REST API已广泛使用多年,但在深入了解GraphQL及其解决的核心问题后,我深感其将引领未来的API设计趋势。GraphQL不仅提高了数据查询的效率,还增强了灵活性和性能,有望成为API开发的新标准。 ... [详细]
  • 深入解析Java虚拟机的内存分区与管理机制
    Java虚拟机的内存分区与管理机制复杂且精细。其中,某些内存区域在虚拟机启动时即创建并持续存在,而另一些则随用户线程的生命周期动态创建和销毁。例如,每个线程都拥有一个独立的程序计数器,确保线程切换后能够准确恢复到之前的执行位置。这种设计不仅提高了多线程环境下的执行效率,还增强了系统的稳定性和可靠性。 ... [详细]
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • 利用爬虫技术抓取数据,结合Fiddler与Postman在Chrome中的应用优化提交流程
    本文探讨了如何利用爬虫技术抓取目标网站的数据,并结合Fiddler和Postman工具在Chrome浏览器中的应用,优化数据提交流程。通过详细的抓包分析和模拟提交,有效提升了数据抓取的效率和准确性。此外,文章还介绍了如何使用这些工具进行调试和优化,为开发者提供了实用的操作指南。 ... [详细]
  • 本文深入探讨了Java多线程环境下的同步机制及其应用,重点介绍了`synchronized`关键字的使用方法和原理。`synchronized`关键字主要用于确保多个线程在访问共享资源时的互斥性和原子性。通过具体示例,如在一个类中使用`synchronized`修饰方法,展示了如何实现线程安全的代码块。此外,文章还讨论了`ReentrantLock`等其他同步工具的优缺点,并提供了实际应用场景中的最佳实践。 ... [详细]
  • 如何高效利用Hackbar插件提升网页调试效率
    通过合理利用Hackbar插件,可以显著提升网页调试的效率。本文介绍了如何获取并使用未包含收费功能的2.1.3版本,以确保在不升级到最新2.2.2版本的情况下,依然能够高效进行网页调试。此外,文章还提供了详细的使用技巧和常见问题解决方案,帮助开发者更好地掌握这一工具。 ... [详细]
  • 七款高效编辑器与笔记工具推荐:KindEditor自动换行功能解析
    本文推荐了七款高效的编辑器与笔记工具,并详细解析了KindEditor的自动换行功能。其中,轻笔记QingBiJi是一款完全免费的记事本软件,用户可以通过其简洁的界面和强大的功能轻松记录和管理日常事务。此外,该软件还支持多平台同步,确保用户在不同设备间无缝切换。 ... [详细]
  • 投融资周报 | Circle 达成 4 亿美元融资协议,唯一艺术平台 A 轮融资超千万美元 ... [详细]
  • 2017年12月7日:React中实现不同组件间的路由导航
    在React应用中,实现从首页到不同组件的路由导航是常见的需求。本文介绍了如何通过配置路由来实现这一功能。具体步骤包括:1. 在首页设置路由链接,使其能够跳转到不同的目标组件;2. 确保目标组件正确配置,特别是在导入时使用默认导出(`default`),以确保路由能够正常工作。此外,文章还提供了详细的代码示例,帮助开发者更好地理解和实现这一功能。 ... [详细]
  • PHP中元素的计量单位是什么? ... [详细]
  • 本文介绍了使用 Python 编程语言高效抓取微博文本和动态网页图像数据的方法。通过详细的示例代码,展示了如何利用爬虫技术获取微博内容和动态图片,为数据采集和分析提供了实用的技术支持。对于对网络数据抓取感兴趣的读者,本文具有较高的参考价值。 ... [详细]
  • 当前,众多初创企业对全栈工程师的需求日益增长,但市场中却存在大量所谓的“伪全栈工程师”,尤其是那些仅掌握了Node.js技能的前端开发人员。本文旨在深入探讨全栈工程师在现代技术生态中的真实角色与价值,澄清对这一角色的误解,并强调真正的全栈工程师应具备全面的技术栈和综合解决问题的能力。 ... [详细]
  • 成功实现Asp.Net MVC3网站与MongoDB数据库的高效集成
    我们成功地构建了一个基于Asp.NET MVC3框架的网站,并实现了与MongoDB数据库的高效集成。此次更新不仅完善了基本的创建和显示功能,还全面实现了数据的增删改查操作。在创建功能方面,我们修复了之前代码中的错误,确保每个属性都能正确生成。此外,我们还对数据模型进行了优化,以提高系统的性能和稳定性。 ... [详细]
  • 在SAP UI5应用开发中,UI5 Inspector是一款不可或缺的Chrome插件,它能够显著提升开发效率。通过离线安装此插件,开发者可以在Chrome浏览器的开发者工具中轻松访问和利用其强大功能,实现对UI5应用的深入分析和调试。该指南详细介绍了从下载到配置的每一步骤,确保开发者能够顺利地将UI5 Inspector集成到他们的开发环境中。 ... [详细]
  • 本课程首先介绍了全栈开发的最后一公里为何重要,并详细探讨了搭建线上生产环境的关键步骤。随后,通过五个本地Node.js项目的实战演练,逐步展示了从快速构建纯静态简易站点到复杂应用的全过程,涵盖了环境配置、代码优化、性能调优等多方面内容。 ... [详细]
author-avatar
请允许我的每一天有你_248
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有