zoukankan      html  css  js  c++  java
  • 微信小程序开发 [00] 写在前面的话,疯狂唠唠


    我总是喜欢在写东西之前唠唠嗑,按照惯例会在博文的开篇写这么一段“写在前面的话”,这次却为了这个唠嗑单独开了一篇文,大概预想着要胡说八道的话有点多。

    前段时间突然对小程序来了兴趣,说句实话,我都忘记了准确的导火线,大概是一直想做点什么个人的小作品,结果又因为贫穷限制了我买服务器。索性这个世界上有种东西叫“第三方API”,我买不起,我用别人的还不行吗?这个问题解决了,还有个问题没解决,那就是我这个人既不会iOS也不会Android,总不能用第三方API写Web吧,那不是也得要个人服务器,又回到最初的起点。

    于是用三方API结合微信小程序就很有意思了,适配移动端也容易,体积小,开发起来成本也远远更低,加上现在微信大大提高了小程序在其生态的入口和地位,说不定掌握它的开发也是未来升职加薪的助力。说干就干,索性就去慕课网买了开发教学视频《微信小程序入门与实战》,149,也还好,不算太贵。累计花了约30h,课程也大概上了近80%,顺便花了6h用gank.io的公开API撸了一个简单的刷刷妹纸图片的小程序(目前并没有上线,因为功能太简单了不想提交上线,后续再完善一部分再提交吧= =),接近过年,无心再码点什么了,索性准备来写写小程序开发的一些东西。


    所以接下来的章节,会唠唠微信小程序的一些基本开发,有兴趣的客官可以继续该系列往下读,应该也不会写得太细枝末节,主要还是给自己的知识留下记录。如果想做小程序开发,希望学习效果更直接一些,建议就直接花钱买那个课程,链接在上面已经给出了,我也不是什么托儿,只是亲测教程质量OK,这个钱花得妥。

     


    另外必须要吐槽的是,在学得七七八八准备自己写点东西练手的时候,找API来玩儿那可太纠结了,一开始想借用微博的API,在微信里刷微博,大概和在微信里用支付宝差不多奇怪的需求了,结果发现完全没办法,两个原因:
    • OAuth2的授权需要到授权页面,而微信小程序里是不支持直接的网页url跳转的
    • 微博的应用审核严格,同时开发API没办法获取到你和你关注者时间线上最新的微博内容

    第一个问题勉强用极其曲折和麻烦的方式解决了,想着让用户关注我的公众号,然后发送一个关键字后我推送授权的链接,用户在微信里是可以用网页的,在公众号跳转的网页授权完成后,再复制回调页面的地址中的code授权码,输入小程序里使用。哇,这个体验,作为开发者我自己都觉得恶心,想着只是做着玩儿甚至可能只是我自己用的一个小程序,也就无所谓了,但是第二个确实就没办法了。

    微博的三方授权都是要先建立应用的,应用的分类里你是实在找不出小程序应该归为哪类,移动端?网页开发?尝试着随便选一个,结果应用要审核公用的话,前者需要提交移动端应用的下载地址,这个肯定不行了;后者要填写网页使用的地址,小程序不支持网页啊,这我可咋弄,这就差不多可以gg了。之所以我说差不多,是因为想着实在不行我就自己用行了吧,因为开发者在应用审核前只能使用个人的授权,然后接下来上面提到的第二个原因直接拍死了后面的开发考虑。

    看下微博给的API,好像完全没什么问题:
     
    看下实际上的详细说明,以statuses/home_timeline这个最最核心重要的接口为例:
     
    什么意思呢,意思是,你如果授权使用这个第三方开发应用,那么接口返回的微博只能返回你本人的,其他人的不会返回,感情是我调用这个接口只能返回我自己发出的微博,我关注者的微博统统不给我,我摔,我要这接口有何用???而且其他相关的接口说明全是这样,我要这接口有!何!用!那为什么微博还是尚存有第三方客户端?看到最后那行了吗,使用官方移动SDK,返回30%非授权用户的微博,也就是说,你如果用的微博客户端是第三方开发人员的,你实际上看到的微博大概只有真实微博数量的30%,这时候不禁要给出一个透露着MMP的微笑。所以想做微博第三方开发的小伙伴,你做移动端iOS或者Android还勉强能读到部分数据,其他的基本还是忘了它吧。可以说是对开发者很不友好了,没办法,依托别人的API就是这样,寄人篱下说不给你了就不给你了,惨。

    于是我又想着折腾instgram的API,然而审核更严格,好像只提供了移动端应用的开发模式,要求审核提交应用app,我小程序我提交啥app,微信么,而且翻墙也麻烦,直接gg。最后在知乎《想写个 App 练手,有什么有趣的 API 接口推荐吗?》找到了gank.io干货集中营的公开免费API,就练手做了个看妹纸图片的简单小程序。后来又细细看了下知乎答案,发现和风天气的API也是免费的,准备年后尝试撸一个天气相关的小程序;博客园的API也提交了申请,审核通过的话应该会再认真写一个博客园的小程序,番茄土豆的API也不错,好像只需要密钥就可以使用API。

    想玩儿的东西还真不少:
    • 和风天气API
    • 博客园API
    • 番茄土豆API

    上面大概就是这段时间来我的一些经历以及我很想吐槽的一些东西了,实际上在这个学习阶段还接触了一些不太熟悉的概念,接下来应该还会探究一下在写一些基本的知识概念的博文,比如:
    • Oauth2
    • token
    • curl
    • 接口设计
    • ...

    年后还打算把家里空闲的电脑装成Linux开始学习,另外索性可以用花生壳做内网映射做成个人的服务器,然后就可以自己写后端的东西了,目前想结合爬虫做点什么,比如可以先尝试根据知乎上某个问题(主要是url分析和如何防止反爬)去爬知乎上各问题下的大美女图片( +v+ )然后还想尝试爬租房信息再结合小程序做一个方便搜索租房房源的东西,哇,想做的事情可太多了,年后还要开始从头学框架等等等等,哎,有趣有趣,然而时不待我,时不待我啊!!!

    列个清单:
    • Linux
    • Java爬虫(Python虽好从头学那又得多少时间啊)
    • 爬美女图
    • 爬房源信息另做小程序

    嗯,虽然不一定都会实际去完成上面的东西... hhhhh

    嗯,感觉和2018年的年目标完全偏离了,emmm...

    不小心bb了这么多... 诶,打住打住...

  • 相关阅读:
    LeetCode Flatten Binary Tree to Linked List
    LeetCode Longest Common Prefix
    LeetCode Trapping Rain Water
    LeetCode Add Binary
    LeetCode Subsets
    LeetCode Palindrome Number
    LeetCode Count and Say
    LeetCode Valid Parentheses
    LeetCode Length of Last Word
    LeetCode Minimum Depth of Binary Tree
  • 原文地址:https://www.cnblogs.com/deng-cc/p/8446295.html
Copyright © 2011-2022 走看看