Ссылка, указывающая на конечную точку бэкэнда, неправильно отображается в тексте письма - PullRequest
2 голосов
/ 08 апреля 2019

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

Он не может анализировать такие символы, как!, ", {,}, Которые мне нужны для запроса ссылки, и в конечном итоге он не работает. Также я попытался включить ссылку в атрибут href тега a, но проблема в том, что он также не может разобрать двойные кавычки.

Пример ссылки:

https://blahblah.now.sh/graphql?query=query($email:String!,$token:String!){verifyEmailToken(email:$email,token:$token)}&variables={"email":"22yiba@clearmail.online","token": "221c4dfd976f3ac22f"}

1 Ответ

1 голос
/ 08 апреля 2019

Некоторые символы имеют особое значение в контексте URL.Вы должны использовать encodeURI для экранирования этих символов.Полученный URL будет выглядеть следующим образом:

https://blahblah.now.sh/graphql?query=query%28%24email%3AString%21%2C%24token%3AString%21%29%7BverifyEmailToken%28email%3A%24email%2Ctoken%3A%24token%29%7D%26variables%3D%7B%22email%22%3A%2222yiba%40clearmail.online%22%2C%22token%22%3A%20%22221c4dfd976f3ac22f%22%7D

Дополнительные сведения см. В Почему я должен использовать urlencode? и Должен ли я использовать encodeURI или encodeURIComponent для кодированияURL-адрес?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...