Rumah >pembangunan bahagian belakang >Golang >Mengapa program Go saya memuat turun fail zip kosong apabila saya cuba memuat turun fail awam daripada Google Drive?

Mengapa program Go saya memuat turun fail zip kosong apabila saya cuba memuat turun fail awam daripada Google Drive?

Patricia Arquette
Patricia Arquetteasal
2024-10-30 14:16:26544semak imbas

Why does my Go program download an empty zip file when I try to download a public file from Google Drive?

Memuat turun Fail Awam daripada Google Drive di Golang

Apabila cuba memuat turun fail zip yang dikongsi secara terbuka daripada Google Drive, anda mungkin menghadapi masalah apabila fail "kosong. zip" sebaliknya dibuat. Ini disebabkan oleh potensi pepijat yang melibatkan sama ada Google Drive atau Go.

Punca masalah terletak pada fakta bahawa URL muat turun awal yang disediakan oleh Google Drive mengubah hala ke URL kedua yang mengandungi aksara asterisk (*) sebagai pembatas. Walau bagaimanapun, apabila Go cuba untuk mengambil URL ini, ia mengekodkan asterisk sebagai *, menukar URL kepada:

https://doc-00-c8-docs.googleusercontent.com/docs/securesc/ha0ro937gcuc7l7deffksulhg5h7mbp1/8i67l6m6cdojptjuh883mu0qqmtptds1/1376330400000/06448503420061938118/%2A/0B2Q7X-dUtUBebElySVh1ZS1iaTQ?h=16653014193614665626&e=download

Malangnya, Google membalas dengan "403 Dilarang" ke URL yang dikodkan ini, mencadangkan bahawa pengekodan * tidak berjaya ditafsirkan sebagai asterisk.

Untuk menyelesaikan isu ini:

  1. Dapatkan URL yang Dibetulkan: Gunakan pelayar web atau alat seperti cURL to akses URL muat turun yang disediakan pada mulanya dan ikuti ubah hala sehingga anda mencapai URL akhir yang mengandungi asterisk, yang sepatutnya kelihatan seperti:
https://doc-00-c8-docs.googleusercontent.com/docs/securesc/ha0ro937gcuc7l7deffksulhg5h7mbp1/8i67l6m6cdojptjuh883mu0qqmtptds1/1376330400000/06448503420061938118/*/0B2Q7X-dUtUBebElySVh1ZS1iaTQ?h=16653014193614665626&e=download
  1. Enkodkan Asterisk Secara Manual: Mengekodkan aksara asterisk (*) secara manual dalam URL yang diperbetulkan menggunakan pengekodan peratus. Ini menghasilkan URL berikut:
https://doc-00-c8-docs.googleusercontent.com/docs/securesc/ha0ro937gcuc7l7deffksulhg5h7mbp1/8i67l6m6cdojptjuh883mu0qqmtptds1/1376330400000/06448503420061938118/%2A/0B2Q7X-dUtUBebElySVh1ZS1iaTQ?h=16653014193614665626&e=download
  1. Gunakan URL yang Dibetulkan: Kemas kini kod Go anda untuk menggunakan URL yang dikodkan secara manual. Ini sepatutnya membolehkan anda memuat turun fail zip daripada Google Drive dengan jayanya.

Atas ialah kandungan terperinci Mengapa program Go saya memuat turun fail zip kosong apabila saya cuba memuat turun fail awam daripada Google Drive?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn