J'écris un script qui télécharge un fichier dans un script cgi qui attend une requête multi-parties, telle qu'un formulaire sur une page HTML. Le boundary
est un jeton unique qui annote le contenu du fichier dans le corps de la demande. Voici un exemple de corps:Génération d'une limite multi-parties
--BOUNDARY
Content-Disposition: form-data; name="paramname"; filename="foo.txt"
Content-Type: text/plain
... file contents here ...
--BOUNDARY--
Le boundary
ne peut pas être présent dans le contenu du fichier, pour des raisons évidentes.
Que dois-je faire pour créer une limite unique? Dois-je générer une chaîne aléatoire, vérifier si elle est dans le contenu du fichier, et si c'est le cas, générer un nouveau, rincer et répéter, jusqu'à ce que j'ai une chaîne unique? Ou est-ce qu'un "jeton assez aléatoire" (par exemple, une combinaison d'horodatage, d'identifiant de processus, etc.) serait suffisant?
Quel langage de programmation utilisez-vous? Habituellement, une telle chose est gérée par une bibliothèque. –
J'utilise Ruby. Il devrait être dans le stdlib, cependant, ne peut pas utiliser des gemmes puisque le script devrait être exécutable sur n'importe quel système avec ruby installé, sans avoir à installer des gemmes. –