ограничение HTTP-протокола amp-html

Я добавил AMP в свой проект и пытаюсь выяснить проблему проверки с протоколом http в действии формы. В официальном примере я вижу, что можно иметь относительный URL-адрес: https://github.com/ampproject/amphtml/blob/master/examples/forms.amp.html

1) когда я пытаюсь использовать относительный URL-адрес, он становится недействительным

Относительный URL "/amp/someurl" для атрибута "action" в теге "form" запрещен.

2) когда я пытаюсь использовать абсолютный URL, он жалуется на протокол

Недопустимый протокол URL "http:" для атрибута "action" в теге "form".

последняя ошибка исчезает, когда я использую https вместо http. Но проблема в том, что на сайте нет https и форма используется только для поиска.

Может быть, мне нужно использовать некоторые <amp-iframe>, чтобы решить эту проблему?


person Vazgen Manukyan    schedule 12.08.2016    source источник


Ответы (1)


Как указано в <amp-form> спецификациях, вы не можете использовать относительный путь для атрибута action, и он должен быть https. То же самое касается <amp-iframe>, вам нужно https для атрибута src.

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

person Andrew    schedule 12.08.2016