Piszę skrypt, który przesyła plik do skryptu cgi, który oczekuje żądania wieloczęściowego, takiego jak formularz na stronie HTML. boundary
to unikalny token, który zawiera adnotację o treści pliku w treści żądania. Oto przykład ciało:Generowanie wieloczęściowej granicy
--BOUNDARY
Content-Disposition: form-data; name="paramname"; filename="foo.txt"
Content-Type: text/plain
... file contents here ...
--BOUNDARY--
boundary
nie może być obecny w zawartości plików, z oczywistych powodów.
Co należy zrobić, aby utworzyć niepowtarzalną granicę? Czy powinienem wygenerować losowy ciąg, sprawdzić, czy jest on w zawartości pliku, a jeśli tak, wygenerować nowy, spłukać i powtórzyć, aż mam unikalny ciąg? A może wystarczy "całkiem losowy token" (powiedzmy, połączenie sygnatury czasowej, identyfikatora procesu itp.)?
Z jakiego języka programowania korzystasz? Zwykle takie rzeczy są obsługiwane przez bibliotekę. –
Używam Ruby. Musiałby być w stdlib, ale nie może używać klejnotów, ponieważ skrypt powinien być uruchamiany w dowolnym systemie z zainstalowanym ruby, bez konieczności instalowania klejnotów. –