国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

踩坑---一個不是坑的難以言喻的坑,有關企業微信在iOS端上傳文件的坑

geekidentity / 1584人閱讀

摘要:我們的業務代碼是在自己的客戶端微信釘釘企業微信四個地方跑的同一套代碼。描述的具體描述是企業微信用戶在使用上傳圖片時,無反應。

起因

今早一去公司,被組長遠程發過來一個Bug,據說是用戶反饋的一個iOS的問題,在我們的業務中,有一個有關圖片上傳的問題。我們的業務代碼是在自己的客戶端、微信、釘釘、企業微信四個地方跑的同一套代碼。

Bug描述

Bug的具體描述是企業微信用戶在使用上傳圖片時,無反應。但是在安卓下運行正常。在其他平臺運行正常。
找測試復現該問題時,發現在安卓平臺下一切正常,但是在iOS端測試發現,在iOS8上運行正常,在iOS9往上的系統中,會彈出一個報錯

a.oldWXObj.invoke not a function
解決過程

因為是在iOS端有問題,所以我初步懷疑是因為我們自己對企業微信的相關SDK進行二次封裝的時候出現了問題,所以我在自己的業務代碼中找到了調用wx.chooseImage的地方,然后console出相關的opts參數

wx.chooseImage(opts);//這是我們自己的調用

wx.chooseImage({
    count: 1, // 默認9
    sizeType: ["original", "compressed"], // 可以指定是原圖還是壓縮圖,默認二者都有
    sourceType: ["album", "camera"], // 可以指定來源是相冊還是相機,默認二者都有
    defaultCameraMode: "batch", //表示進入拍照界面的默認模式,目前有normal與batch兩種選擇,normal表示普通單拍模式,batch表示連拍模式,不傳該參數則為normal模式。(注:用戶進入拍照界面仍然可自由切換兩種模式)
    success: function (res) {
        var localIds = res.localIds; // 返回選定照片的本地ID列表,
                // andriod中localId可以作為img標簽的src屬性顯示圖片;
                // 而在IOS中需通過上面的接口getLocalImgData獲取圖片base64數據,從而用于img標簽的顯示
    }
});

發現opts沒有問題,然后開始查看企業微信的開發文檔,發現了這樣一段話

此接口在企業微信2.3及以后版本支持相機連拍(當sourceType是camera時)
參數defaultCameraMode僅在企業微信2.4.20及以后版本支持
從2.4.6版本開始,IOS版企業微信瀏覽器將升級為WkWebView,因其不支持原有的直接通過localid作為img標簽的src屬性來顯示圖片的方式。開發者需要采用通過getLocalImgData來獲取localid對應圖片的base64數據。

看到了iOS,看到了有關圖片上傳,便以為是這里的問題,然后便開始對localid 進行修改,改著改著發現,不對啊,是調用的時候就報錯了,并不是因為在callback里面的問題啊。

然后把wx.chooseImage進行alert,發現這個函數是存在的,但是發現還是有問題,代碼大概是這樣的

a.oldWXObj.invoke("chooseImage",params,callback)

然后我一直在想這個a.oldWXObj是什么東東,看源碼,并沒有找到這個東西,然后查看我們的sdk版本是1.0.0,最新的sdk版本是1.2.0。以為是因為sdk版本的原因,然后把項目中的sdk升級,問題還是存在,看來不是sdk的原因,繼續探索。

后來沒有思路,去請教大佬,大佬給了個思路,在企業微信中開啟一個別的第三方的業務,看看他們的圖片上傳是否也存在相同的問題,OK,照著這個思路往下繼續。我去,第三方的圖片上傳是沒有問題的,OK,那么肯定是我們自己的業務代碼的問題,然后把業務剝離出來,在新建兩個文件,一個采用我們自己封裝的sdk,一個不用自己封裝過后的sdk,直接調用wx的sdk,然后我把相關的wx.config復制 了過去,發現圖片上傳還是有問題,然后考慮是不是免登沒有通過呢? 試著調用其他的方法,發現獲取當前位置、掃描二維碼、開始錄音這三個方法都可以成功調用,確定免登是通過了的,不是免登的問題。

大佬說換個思路,用Charles開始抓包查看第三方的實現,這一部分才是寫這個 踩坑記錄的重點 ,主要是看這個調試的過程,最開始用Mac自帶的Safari嘗試調試,發現企業微信并沒有把調試開放出來,只能通過抓包來一點點嘗試了,OK,在簡書上搜索Charles抓包,按照步驟,發現第三方是https,然后再萬能的簡書,抓包https,一切完成后。發現第三方也是調用的wx.chooseImage,那么說明我們調用的業務代碼沒問題啊,然后通過這種方式,用本地文件代替線上的文件進行調試,把我們的相關業務代碼代替第三方的相關代碼,發現我們的代碼在第三方的應用里面是正常運行的。我去!!!這就奇怪了呀,這時,一天的時間不知不覺都過去了,還沒有解決問題,心中真的是,一言難盡!!!

最后,開始從頭梳理代碼,從第三方最開始調用企業微信的sdk開始一點點對比,把我們的相關信息跑在第三方平臺里,來,把wx.config粘貼過來、貼過來、過來、來......咦,這個config有一點不一樣誒!!!

//我們自己的配置
wx.config({
    debug: false, 
    appId: "", // 必填,企業微信的corpID
    timestamp: , // 必填,生成簽名的時間戳
    nonceStr: "", // 必填,生成簽名的隨機串
    signature: "",// 必填,簽名,見附錄1
    jsApiList: [] // 必填,需要使用的JS接口列表,所有JS接口列表見附錄2
});


//文檔標準的配置
wx.config({
    beta: true,// 必須這么寫,否則wx.invoke調用形式的jsapi會有問題
    debug: true, // 開啟調試模式,調用的所有api的返回值會在客戶端alert出來,若要查看傳入的參數,可以在pc端打開,參數信息會通過log打出,僅在pc端時才會打印。
    appId: "", // 必填,企業微信的corpID
    timestamp: , // 必填,生成簽名的時間戳
    nonceStr: "", // 必填,生成簽名的隨機串
    signature: "",// 必填,簽名,見附錄1
    jsApiList: [] // 必填,需要使用的JS接口列表,所有JS接口列表見附錄2
});

?突然發現我們的代碼配置里面,沒有beta這個配置,加上,試一下,

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/96749.html

相關文章

  • 微信小程序里碰到的坑和小知識

    摘要:本文作者來自授權地址已解決在里設置了圖片路徑在里正常無誤但是在手機上是沒有顯示的解決辦法這段話位置放那么偏問題描述代碼截圖模擬器里的效果手機里的效果未解決用小程序自帶的底部導航組件的話沒法實現跟微信原生底部小紅點或者消息提醒的功能已解決使用 本文作者:dongtao 來自:授權地址 1.已解決在app.wxss里設置了圖片路徑,在IDE里正常無誤,但是在手機上是沒有顯示的,解決辦法...

    yagami 評論0 收藏0
  • 微信小程序里碰到的坑和小知識

    摘要:本文作者來自授權地址已解決在里設置了圖片路徑在里正常無誤但是在手機上是沒有顯示的解決辦法這段話位置放那么偏問題描述代碼截圖模擬器里的效果手機里的效果未解決用小程序自帶的底部導航組件的話沒法實現跟微信原生底部小紅點或者消息提醒的功能已解決使用 本文作者:dongtao 來自:授權地址 1.已解決在app.wxss里設置了圖片路徑,在IDE里正常無誤,但是在手機上是沒有顯示的,解決辦法...

    233jl 評論0 收藏0
  • thinkphp整合企業的坑

    摘要:使用微信企業號回調的坑最近在做企業號回調的接口,之前做過幾個企業號的應用了,每次接入到都報各種各樣的錯誤,算哥倒霉,該踩的不該踩的坑全踩了。 ThinkPHP 使用微信企業號回調的坑 最近在做企業號回調的接口,之前做過幾個企業號的應用了,每次接入到Thinkphp都報各種各樣的錯誤,算哥倒霉,該踩的不該踩的坑全踩了。 這次掉坑里差點就放棄了,開發過企業號的都知道,企業號回調會經過一個...

    wing324 評論0 收藏0
  • 微信JS-SDK選擇圖片遇到的坑

    摘要:微信選擇圖片遇到的坑有個需求要在微信企業號里面做開發,有個功能是選擇圖片,使用標簽肯定是不管用了,手機上不能多選,所以使用了微信的提供的相關,這個地方真的是有坑,記錄一下。 微信JS-SDK選擇圖片遇到的坑 有個需求要在微信企業號里面做開發,有個功能是選擇圖片,使用input標簽肯定是不管用了,Android手機上不能多選,所以使用了微信的JS-SDK提供的相關API,這個地方真的是有...

    explorer_ddf 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<