知識(shí)
不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價(jià)值,我們?cè)谧非笃湟曈X(jué)表現(xiàn)的同時(shí),更側(cè)重于功能的便捷,營(yíng)銷(xiāo)的便利,運(yùn)營(yíng)的高效,讓網(wǎng)站成為營(yíng)銷(xiāo)工具,讓軟件能切實(shí)提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序?yàn)楹笃谏?jí)提供便捷的支持!
您當(dāng)前位置>首頁(yè) » 新聞資訊 » 小程序相關(guān) >
Django實(shí)現(xiàn)微信小程序九宮格切圖后端(第九周學(xué)習(xí)記錄)
發(fā)表時(shí)間:2020-10-19
發(fā)布人:葵宇科技
瀏覽次數(shù):52
第九周學(xué)習(xí)記錄
上周第八周確實(shí)沒(méi)有發(fā)布我的學(xué)習(xí)記錄,因?yàn)榉?wù)器的原因項(xiàng)目也一直延遲,好在周日老師的服務(wù)器批下來(lái),小伙伴也開(kāi)始了快樂(lè)windows服務(wù)器配置,我自然也不能閑著,這周開(kāi)始趕進(jìn)度
一、小程序的js口
原來(lái)的那個(gè)集成后的小程序一直處于微信頭像上傳不了的情況,其他的功能請(qǐng)求都很完善了,這個(gè)問(wèn)題還在解決,因該是兩個(gè)小程序的合并出現(xiàn)沖突,如果大家有好的方法歡迎指出
二、新項(xiàng)目:九宮格切圖
這個(gè)項(xiàng)目說(shuō)新也不是最新的,因?yàn)橹盎A(chǔ)的原因一直擱置了,現(xiàn)在才撿起來(lái),功能就是前端傳一張完整的一張圖片,后臺(tái)處理圖片并將圖片切為九張,然后返回前端,通過(guò)js處理一下顯示到wxml界面上,技術(shù)上的工作在經(jīng)歷了證件照的工作后就十分簡(jiǎn)單了
我在這定義了一個(gè)app,意思就是剪切圖片,通過(guò)訪問(wèn)/cut/cut_image
可以通過(guò)POST請(qǐng)求調(diào)用函數(shù),具體的函數(shù)方法我在第一篇博客也指出了
https://blog.csdn.net/weixin_43951163/article/details/107928486
唯一不同的是,需要base64轉(zhuǎn)碼,返回http響應(yīng)
def cut_main(request):
if request.method == 'POST': # 發(fā)送請(qǐng)求的格式
image = request.FILES['image'] # 數(shù)據(jù)請(qǐng)求的名字
open_id = request.POST.get('openid') # 獲取小程序發(fā)送過(guò)來(lái)的opid
global basedir
basedir = os.path.dirname(os.path.dirname(__file__)) # APP1目錄
path_old = basedir + '/cut_image/temp/' # 原圖片靜態(tài)存儲(chǔ)路徑
content = path_old # 處理后的存儲(chǔ)路徑
# print(centent)
with open(content + open_id + '.jpg', 'wb') as f: # 保存小程序傳輸過(guò)來(lái)的圖片
f.write(image.read())
f.close()
# 加入圖片轉(zhuǎn)換代碼
file_path = os.path.join(content, open_id + '.jpg')
print(file_path)
# 分別調(diào)用處理函數(shù)
image = Image.open(file_path)
image = fill_image(image)
image_list = cut_image(image)
DIR_NAME = os.path.dirname(os.path.abspath(__file__))
# 保存圖片
save_images(DIR_NAME, image_list)
res_dir = os.path.join(DIR_NAME, 'result')
# 創(chuàng)建長(zhǎng)度為9的數(shù)組
pic_base = [1,2,3,4,5,6,7,8,9]
# base64轉(zhuǎn)碼
for index in range(0,9):
new_name = os.path.join(res_dir, str(index+1) + '.png')
print(new_name)
img_im = cv2.imread(new_name, 1) # 要把處理完的圖片轉(zhuǎn)碼成base64返回
receive_base = base64.b64encode(cv2.imencode('.png', img_im)[1]).decode() # 把轉(zhuǎn)換的編碼賦值
pic_base[index] = receive_base
#每處理一張就刪除
os.remove(new_name)
print(pic_base[index]) # 打印圖片的base碼的字母
#刪除原圖片
del_path = path_old + open_id +'.jpg'
print(del_path)
os.remove(del_path)
return HttpResponse(pic_base)
這樣在執(zhí)行一個(gè)請(qǐng)求后文件不會(huì)出現(xiàn)任何變化,當(dāng)然,這里我沒(méi)有使用服務(wù)器部署,日后會(huì)進(jìn)一步改進(jìn)
小程序前端會(huì)受到類(lèi)似這樣的代碼
三、上傳服務(wù)器
這里我先上傳到我自己的centos7的服務(wù)器上,具體的windows高配置服務(wù)器我的另外一個(gè)伙伴會(huì)更新
上傳自己服務(wù)器還是按照之前博客所說(shuō),可以參考我以前的文檔
https://blog.csdn.net/weixin_43951163/article/details/108395176
或者h(yuǎn)ttps://www.django.cn/article/show-30.html
相關(guān)案例查看更多
相關(guān)閱讀
- SEO
- 網(wǎng)站建設(shè)費(fèi)用
- 汽車(chē)回收管理
- 網(wǎng)站建設(shè)方法
- 網(wǎng)站建設(shè)開(kāi)發(fā)
- 汽車(chē)報(bào)廢回收管理軟件
- 云南網(wǎng)站建設(shè)報(bào)價(jià)
- 云南省城鄉(xiāng)建設(shè)廳網(wǎng)站
- 網(wǎng)站制作哪家好
- 百度快速排名
- 網(wǎng)絡(luò)公司哪家好
- 網(wǎng)絡(luò)公司聯(lián)系方式
- 汽車(chē)報(bào)廢系統(tǒng)
- 汽車(chē)報(bào)廢拆解管理系統(tǒng)
- 昆明小程序開(kāi)發(fā)
- 云南網(wǎng)站建設(shè)招商
- 河南小程序制作
- 小程序開(kāi)發(fā)費(fèi)用
- 網(wǎng)站建設(shè)專(zhuān)業(yè)品牌
- 云南企業(yè)網(wǎng)站
- 花農(nóng)小程序
- 昆明網(wǎng)站設(shè)計(jì)
- 小程序開(kāi)發(fā)公司
- 云南建設(shè)廳官方網(wǎng)站
- 云南網(wǎng)站建設(shè)快速優(yōu)化
- 云南網(wǎng)站維護(hù)
- 網(wǎng)站開(kāi)發(fā)公司哪家好
- 軟件定制公司
- 云南百度小程序
- 昆明小程序定制開(kāi)發(fā)