2013-10-05 2 views
0

У меня есть строка, содержащая содержимое файла javascript, и мне нужно загрузить его на сервер (это не часть кода на стороне сервера - он используется только для разработки (редактирования кода на месте), поэтому безопасность не имеет значения). PHP-скрипт использует переменные file и content. Я нашел только реализации, где аргумент xhr.send() был строкой в ​​стандартном формате GET (var1 = sth & var2 = sthelse), но я бы хотел отправить эту строку без кодирования/декодирования/экранирования/отмены на стороне сервера. Поскольку это js, он содержит все возможные символы, включая '&' или '='.отправить неэкранированную строку с XHR (javascript)

Возможно ли передавать данные в POST иначе, чем при использовании стандартного запроса?

Я скорее не заинтересован в JQ решения

+1

Nope. (php предоставляет POST как отсортированный ассоциативный массив, который не то, что вы хотите) – Brian

ответ

1

Отправка содержимого JS файла в качестве параметра строки запроса не является хорошей идеей. Несколько баллов:

  • Если ваша ситуация поддерживает HTML5, вы можете send files to your server with JS.
  • Если вы не хотите отправлять как отправку файла, я бы отправил его как данные POST.
  • Любые данные, закодированные или экранированные на клиенте, могут быть декодированы или неэкранированы на сервере. В некоторых настройках это автоматически выполняется для вас. Нет причин, чтобы избежать этого, если это правильный способ обработки данных.
+0

как я имел в виду - у меня есть редактор js-кода (редактор кода Ace), встроенный на веб-сайт - мой сайт загружает файлы с сервера - тогда, когда я открываю редактор устанавливает флаг «DEBUG», а после него, когда я перезагружаюсь, - он не загружает файлы с сервера, а из localStorage (когда я поврежу код, он загружает резервную копию с сервера), поэтому после работы я хотел бы загрузить измененные js из localStorage в файлы на сервере - файл escaping js сильно повлияет на размер выгрузки – Lapsio

+1

, который заботится о размере загрузки, вам нужно получить файл там, любой файл, целым куском, а кодировка - единственный способ убедиться, что случается. вы загружаете так много прав, что пропускная способность является реальной проблемой? это будет невероятное количество редактирования с вашей стороны! вы можете ОТКЛЮЧИТЬ данные перед кодировкой base64, результаты которых с текстовым файлом будут обычно меньше, чем orig, даже после base64ing ... – dandavis

Смежные вопросы