Показать сообщение отдельно
IkaR49
14.06.2015
 
 
Аватар для IkaR49
Опытный
О пользователе
 
Сообщений: 2,037
ВкоптоКарма: 1,352


[#3]
По умолчанию

На самом деле ВК тут не виноват. Давайте разберём по полочкам:

Разбор "правильной ссылки", кому интересно:
Разбор ссылки по частям
Разбиваем на части:

Домен ВК
Цитата:
https://vk.com/
Файл, регистрирующий переход на другой домен
Цитата:
away.php
Дальше начинаются аргументы, которые обрабатывает этот файл, и никто иной.

Сама целевая ссылка
Цитата:
?to=http%3A%2F%2Fbash.im%2Fquote%2F434200
Здесь разберём отдельно:
Название параметра, куда поместится ссылка
Цитата:
?to=
Сама ссылка, где ключевые символы URL заменены на специальные последовательности
Цитата:
http%3A%2F%2Fbash.im%2Fquote%2F434200
Если расшифровать все символы в нормальный вид, то получится:
Дальше начинается то, на что собственно и претензии:
1.
Цитата:
&rsz=mx или &rsz=sx
Не знаю что это, но не суть важно.
2.
Цитата:
&from_mail=1
Просто метка, что сообщение из диалогов. Думаю статистика и ничего кроме.


А теперь внимание, как поймать вашу ошибку:
  • Отправляете кому-нибудь в ЛС ссылку (например http://habrahabr.ru/). Или получаете от кого-нибудь.
  • Пытаетесь по ней перейти - всё происходит хорошо.
  • Теперь обновляете страницу диалогов
  • Снова пытаетесь перейти по ссылке - вероятно это произойдёт плохо (например с хабром так и происходит)
Разбор ссылки после обновления страницы:
(если кому интересно)

Исходный вид

Каково же отличие от предыдущего варианта? Отсутствует первая часть
Цитата:
https://vk.com/away.php
Всё остальное осталось на месте (и сама ссылка раскодировалась в правильный вид)


Проблема в том, что некоторые сайты (например http://habrahabr.ru/) обрабатывают все переданные параметры. Этих параметров они не знают, и поэтому могут показывать что-то вроде такого:




Подводя итоги:
Проблема открытия ссылок вина не ВК, вина ВКопта. Потому что текущая релизная версия просто не знает о том, что в этих ссылках есть какие-то доп. параметры. И поэтому ссылка преобразуется неправильно.

Как исправить?
Отключить в настройках функцию "Обход away.php". Включить её можно будет со следующим обновлением плагина.

Оффлайн
 
Ответить с цитированием
3 пользователя(ей) сказали cпасибо: