строка запроса с / в нем допустима?

Из-за отсутствия передачи с партнером филиала мы работаем с URL, они обращаются к нашему серверу, был перепутан.

Это - URL, они, как предполагается, обращаются к нашему серверу:

 /AAAAAAAA/?b=CCCCCCC

к сожалению, это было реализовано в их системе как это

 ?b=CCCCCCC/AAAAAAA

Я могу легко проанализировать компоненты, но я волнуюсь, что параметром строки запроса с / в нем не является на самом деле допустимый URL.

/ в на самом деле допустимом URL - или если я быть затронутым. При каких обстоятельствах может незакодированный / проблемы причины в строке запроса.

9
задан Chris Garrett 22 March 2017 в 19:35
поделиться

2 ответа

Действительно ли соглашение о вызове fastcall быстрее, чем другие соглашения о вызове, такие как cdecl?

Я считаю, что реализация Microsofts fastcall на x86 и x64 включает передачу первых двух параметров в регистрах, а не в стеке.

Поскольку обычно сохраняется не менее четырех доступов к памяти, то, как правило, это происходит быстрее. Тем не менее, если задействованная функция голодает и, таким образом, может записать их местным жителям в стеке, вероятно, не будет значительного увеличения.

-121--1176563-

Зависит от платформы. Например, для Xenon PowerPC разница может быть на порядок из-за проблемы с загрузкой-попаданием в хранилище при передаче данных в стеке. Я эмпирически синхронизировал служебные данные функции cdecl примерно с 45 циклами по сравнению с ~ 4 для fastcall .

Для неупорядоченных x86 (Intel и AMD) влияние может быть гораздо меньше, потому что все регистры затенены и переименованы в любом случае.

Ответ на самом деле заключается в том, что вы должны проверить его на конкретной платформе, которую вы заботитесь.

-121--1176562-

Хотя у меня никогда не было проблем, технически они не разрешены согласно RFC 2396 :

В компоненте запроса зарезервированы символы «;», «/», «?», «:», «@», «&», «=», «+», «» и «$».

Но, как я сказал... я никогда не сталкивался ни с какими проблемами. Я думаю, что это проблема со старыми браузерами больше, чем что-либо, но, возможно, кто-то может пролить еще свет на проблему, которую это вызывает?

2
ответ дан 4 December 2019 в 19:33
поделиться

Слэш - это "зарезервированный символ" в части запроса URL согласно разделу 3.4 RFC 2396, поэтому согласно разделу 2.2 он должен быть закодирован. То есть часть запроса может содержать %2F, но не должна содержать /.

1
ответ дан 4 December 2019 в 19:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: