2013-08-06 18 views

cevap

11

Evet, ancak bunu bir kamu web sitesinin bir parçası yapacağız eğer daha güvenli bir şekilde Amazon API anahtarlarını işlemek için sunucu arka uç çeşit gerekecektir.

Bu bu projelerin tam bir örnek uygulaması nasıl göründüğünü bulabilirsiniz:

Ruby kullanan bir PHP arka uç
  • s3_multipart kullanır

    Lütfen dikkat, bu projeleri kullanmadım, test etmedim veya incelemedim.aşağıdaki gibi

    dizisinin bir kaba açıklamasıdır:

    1. Kullanıcı
      • yükler web sayfası
      • hit düğmesine karşıya yüklemek için dosyayı seçer
    2. Web
      • sunucuya dosya hakkında bilgi gönderir
    3. Sunucu
      • Amazon API ile çok parçalı yükleme
      • geri Web
    4. Web
    5. için "anahtar" (dosya adı) ve "id karşıya" gönderir yaratır
      • , parça boyutunun dışına çıktı
      • istekleri "geçme", "yükleme kimliği" bölümü, parça bilgisi
    6. Sunucu
      • "bölümü yükleme url", "tarih" ve "auth başlığını"
    7. Web
      • aracılığıyla Amazon S3 doğrudan parçası veri gönderir gönderir bir parçası isteği imzalar "bölümü yükleme url" "tarih" ve "auth başlığını" seçeneğini kullanarak
      • bölüm kimlikleri izler
    8. Sunucu & her ek bölümü için Web
      • tekrarlar 5 & 6, gerekirse sürdürme
        • sunucuya isteği "tam yükle" yapar
      • Web
    9. (parçası bilgisi geçen)
    10. Sunucu
      • , Amazon API'sini

        yükleme iptal edilirse
        • , bu da ele alınması gerekir sunucu tarafı: Dosyanın e oluşturma
      • Web
        • hata veya başarı

    Notlar kullanıcı haber Diğer kısımlar/yüklemeler başladıktan sonra S3 Kepçesinde yer kaplayacak.

  • "Yükleme tamamlandı" isteğinin Amazon'a tamamlanması birkaç dakika sürebilir.
  • +0

    Detaylı cevap için teşekkür ederiz! Daha önce ayrıntılı olarak anlattığınız protokolü uygulamaya başladım, ancak henüz bitirme konusunda henüz bir şey yapmadım: https://github.com/keichan34/s3uploader/tree/2.0-wip –

    +1

    Harika, farkettim ki projenizde Ruby'yi kullanıyor ve referansınız için cevabı eklediğim başka bir Ruby projesi buldum. –

    +0

    Burada PHP'de başka bir örnek var [https://github.com/ienzam/s3-multipart-upload-browser](https://github.com/ienzam/s3-multipart-upload-browser) – BausTheBig