Как стать автором
Обновить
15
0
Денис @Bukashk0zzz

Back-end developer

Отправить сообщение

В таком случае ответ простой. С помощью веб контейнера gtm это сделать невозможно. FB CAPI подразумевает только S2S соединение. Для отправки запросов в CAPI используется ваш приватный ключ от FB. И получается если вы будете отправлять запросы с WEB контейнера то все его смогут увидеть и получить доступ к данным на вашем FB акаунте.

Не совсем понятен вопрос. Существует несколько вариантов реализации FB CAPI. И использование GTM Server Side один из них.

Для меня он удобен тем что как правило у клиента уже установлен GTM Web контейнер и с помощью этого решения можно сделать отправку запросов в CAPI без вмешательства разработчиков.

iOS 14 (а именно ITP) не блокирует выполнение js или работу fb/google analytics.
ITP пытается блокировать cross site tracking.

Conversion API от FB решает проблему межсайтной слежки за пользователем. Так как вы передаете User Agent, IP, fbp, fbс если возможно то и email/phone/имя пользователя и другое. С помощью всех этих параметров FB может точно сказать какой именно пользователь посещал те или иные сайты. Таким образом FB будет знать все тоже самое про пользователя и даже больше чем до появления ITP и похожих технологий.
3) Google больше не может выставлять cookie c вашего сайта на google.com вот более детально про текущий статус www.cookiestatus.com

Вообще почти все описанные проблемы в статье решает GTM Server Side. Вы можете раздавать cookie аналитики со своего домена на 2 года. Это работает и в Safari и Firefox и любых других браузерах с ITP 2.2 и даже обходить CNAME cloaking.

2) Зависит от того какой конкретно домен использован для iframe.

В рамках одного домена можно пользователя обеднить по cookie даже сейчас. Не важно как открывается сайт через iframe или sub домен или просто на прямую.

А касательно того как идентифицировать пользователя с разных девайсов/браузеров. Я обедняю по своим признакам email/phone/ip+user agent. Пользователь мог подписаться на рассылку/зарегистрироваться/рекламный источник передать идентификатор. Это все можно отправлять в аналитику и привязывать к пользователю. Примерно по такому же принципу Facebook определяет пользователя на сайте с пользователем у себя. Вот по этому Facebook пиксель просит присылать им email/phone/ip/user agent.
Погуглив я понял что такая возможость есть уже давно. Раньше я ее не замечал. Возможно ее немного переместили в другое место. В любом случае надеюсь статья будет полезной хотя бы для таких слоупоков как я.
С того что читал в документации про разные yml в маркет и вебмастер ничего не писали.
По логике это не должно мешать друг другу.
YML был в Yandex Market теперь он появился в Yandex Webmaster и многие думаю об этом не знают. Если написать в своем блоге о библиотеке ее не заметят. И если у кого то возникнет потребность создания даного файла ему не прийдется решать проблему самому.
В связи с тем что теперь выгрузка товаров в яндекс бесплатная я думаю это будет актуально.
Но есть же проекты которым уже не один год) В таких случаях достаточно сложно перейти на что то другое.
А как можно удобно фильтровать данные при вывод если вы используете Serializer + FOSRest?
С учетом того что выводимые данные в таком случае описываются в модели http://jmsyst.com/libs/serializer/master/reference/annotations
> Расскажите как вы будете это делать если у вас один компонент допускает только br в name сущности, другой компонент допускает только b в name сущности. Сущность одна, приемников несколько, но в пропертях вы можете задать только один фильтр. Ваши действия?

Использовать группы фильтрации. Ровно так же как это сделано с валидацией.

> В общем на мой взгляд спорное решение.
Исходя из ваших слов выходит что и Constraint в symfony сделаны не верно.

Я долго работал с Zend и после перехода на Symfony самое первое что мне бросилось в глаза это простота/удобство аннотаций. Раньше я все валидации/фильтрации делал в формах и не могу сказать что это удобно.
>В большинстве случаев жирные объекты с большим количеством полей свидетельствуют о недостаточном уровне декомпозиции.
Да но вы же не можете повлиять на нормализацию сторонней базы данных.

>Что именно мне нужно фильтровать? Вот… серьезно, я не могу придумать.
Например:
— в varchar хранится int и вам именно int нужно передать дальше.
— есть текст с переносами \n вам нужно сделать
— есть html а нужно передать text
— есть datatime а нужно timestamp
Конкретный пример из жизни. У вас есть объект который вы получили с сервиса/базы данных которую редактировать у вас нет доступа. В объекте нужно отфильтровать несколько полей перед тем как передать конечному клиенту/сервису.
Исходя из вашего личного правила что в set/get можно писать фильтрацию и подобные вещи эта проблема решаема. Но куда удобней добавить одну аннотацию к property вместо нескольких строчек кода. Особенно если у вас много таких объектов и они совсем не маленькие. С моим решением как минимум станет легче читать код.
Мою задачу одними Data Transformer`ами не решить. Они работают для форм, но любой объект ими не отфильтруешь. Например есть база данных сторонняя и нету возможности изменять её формат и данные, но получать информацию можно. В моем решении можно отфильтровать любой объект с аннотациями в любой нужный момент.
Думаю Вы просто мало с этим стыкались. Пример: как легко и просто можно фильтровать данные которые вы получаете от пользователя в написаном вами API? Или фильтрация данных из entity когда entity нужно передать в serializer/сторонний api?
По порядку)

Окей, вы вот написали бандл, и что дальше?

Давайте будем им пользоваться и не будем писать новый велосипед.

Какие были трудности

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

A так получается, что вы просто свой бандл по сути рекламируете

Так и есть. Просто когда я искал подобное решение я ничего не нашел. И решил что б если у кого-то появится подобная задача и он загуглил решение в интернете то мог бы легко найти данную статью и решить свою проблему не писав того что уже написано.

даже особо не объясняя, в чем его прелесть и как им пользоваться.

В статье есть ссылка на документацию где подробно написано как им пользоваться. Я подумал что не стоит дублировать документацию в статью.

Не совсем понимаю вашу критику.
Есть вариант значительно проще. Подключить bundle github.com/beberlei/DoctrineExtensions

Может кому поможет.
Введи другу почту. У меня на gmail.com не отправилось, а на me.com сразу все ок.
Проводил тестирование версии 1.11 выдал критическую ошибку.
Сейчас использую hhvm в коммерческом проекте для обработки данных полученных с бд. Прирост сравнительно с php fpm в 1/3 было 0.9 сек сейчас 0.500 в среднем. Как по мне то очень хороший результат учитывая что никаких дополнительных действий по оптимизации кода не проводилось.

Информация

В рейтинге
Не участвует
Откуда
Киев, Киевская обл., Украина
Дата рождения
Зарегистрирован
Активность