• Как сделать хотспоты на 360 слайдере?

    lastuniverse
    @lastuniverse
    скинь свой код слайдера в песочницу (jsfiddle или codepen) глянем, может даже подскажем.
    Написано
  • Как упростить код?

    lastuniverse
    @lastuniverse
    Reactive Extensions это же древность древняя, я уже забыть успел как с этим работать)
    Поддерживаете какой то винтажный проект?
    Написано
  • Как вызвать символ элемента массива?

    lastuniverse
    @lastuniverse
    если до сих пор не понятно. у вас:
    var array = [rgrgr, fwerf, rngri]

    а должно быть:
    var array = ['rgrgr', 'fwerf', 'rngri'];
    Написано
  • Как запретить кеширование данных, полученных через API?

    lastuniverse
    @lastuniverse
    N, просто выставлять цену на блк с учетом кеширования (подороже)
    Написано
  • Как запретить кеширование данных, полученных через API?

    lastuniverse
    @lastuniverse
    N, любые манипуляции на стороне сервера не пресекут возможность получить и сохранить информацию.

    На самом деле поразмышляв всетаки скажу что вышеизложенная идея плоха, так как опять же не пресекает возможность распарсить готовый html.

    В общем пришел к выводу, чтл в заданных условиях технического решения (даже компромисного) не найти.

    Остается только продавать инфу за такую цену, чтобы ее кеширование и перепродажа не несла убытков. А это плохо, не каждый купит. Ну еще можно продовать инфу блоками (заплатил - купил новый блок инфы). Другого на ум не приходит.
    Написано
  • Как запретить кеширование данных, полученных через API?

    lastuniverse
    @lastuniverse
    НО, мне нужно знать, сколько было запросов через эти методы...
    А, если эти методы кэшировать будет тот партнёр...то я теряю выгоду...
    Так ясно?))


    Да я понял подноготную проблемы. Описал выше один из вариантов. На второй уже сил нет. Он еще веселее)))
    Написано
  • Как запретить кеширование данных, полученных через API?

    lastuniverse
    @lastuniverse
    N, ок, тогда так. Главный затык, по сути это п.9 и п.13. Все остальное реализуемо посредством API.
    Полноценных вариантов не вижу, но есть пару полумер, позволяющих затруднить п.9.
    первый вариант
    Вы делаете не только API но и некоторую встраиваемую в браузер библиотеку, которая будет являтся программным интерфейсом к вашему API, так же данная библиотека должна иметь функционал для заполнения нужной информацией указанный блок/блоки. Тоесть по запросу к API через нее она не выдает json (или любой другой формат) с данными, а самостоятельно эти данные вносит в указанных создателем партнерского сайта блок/блоки. При этом библиотека должна пройти жесткую обфускацию для того чтобы максимально затруднить реверсинженеринг. API сервиса, для того чтобы затруднить перехват информации на стадии доставки до клиента с помощью сниферов должно передавать данные в зашифрованном виде а библиотека должна обеспечивать дешифровку этих данных.
    API сервиса, для того чтобы затруднить определение своих роутеров, должно обеспечивать некоторое маскирование роутеров (например все запросы идут не на https://site/authors/get а на некий, одноразовый https://site/jdhf74cbfd7fwfue4) Это достигается следующим образом: клиентская библиотека должна загружаться с вашего сервиса, и при этом при каждой загрузке в нее встраивается временная информация о уникальных, временных псевдонимах вида https://site/jdhf74cbfd7fwfue4 для каждого роутера вашего сервиса, на само же сервисе временно создаются роутеры, соответствующие псевдонимам. Данную механику проще организовать на WS нежели на http.
    Все эти меры в совокупности серьезно затруднят реверс инженеринг библиотеки и исследование структуры роутеров вашего сервиса, тем самым максимально затруднят написание автоматизированной системы выкачивания данных из вашего сервиса.

    Пример использования такой библиотеки на клиенте[сайт партнера] (достаточно убогий, призванный лишь продемонстрировать подход)

    Пусть serviceAPI - это данная библиотека
    Пусть serviceAPI.getData(source, targets); - метод, получающий данные от API сервиса

    например мы хотим получить список авторов который приходит в виде json следующего содержания (данный json не попадает в доступ к партнеру, но его структура описана и ему известна)
    {
      head: "текст заголовка",
      list: [ // массив с данными авторов
         {name: "Дем Михайлов", info: "какаято инфа",  id: "id автора"},
         {name: "Дем Михайлов", info: "какаято инфа",  id: "id автора"},
      ],
      footer: "текст под списком",
    }


    тогда используем либу как то так

    const authors = serviceAPI.getData("authors");
    
    authors.insert("head", "id блока в который засунуть инфу");
    authors.foreach("list", (item)=>{
      // тут партнер создает блоки для размещения инфы об очередном авторе и заполняет их
      item.insert("name", "id блока для имени");
      item.insert("info", "id блока для инфы");
      item.link("id", "id блока для создания ссылки");
    });


    то есть объекты типа authors и item содержат методы:
    .insert("наименование ключа", "id блока для вставки данных из данного ключа");
    .foreach("наименование ключа", (item)=>{
    // функция получающая для каждой записи из массива "наименование ключа" объект item, имеющий те же методы что и authors а так же доступ к полям/ключам текущего автора/или чего еще
    });
    .link("наименование ключа", "id блока для создания ссылки");


    все эти методы весьма условны и плохо прдуманы (а как же react, angular и vue), просто демонстрация подхода.
    Основная их цель не дать партнеру доступа к данным, но при этом позволить разместить эти данные на странице в подготовленных партнером блоках (div-ах).

    таким образом, партнер не имеет прямого доступа к информации, но может размещать ее на своем сайте, оформляя блоки так как ему нравится

    Данный подход не защитит информацию полностью, достаточно упорный программер сможет написать парсер, вытягивающий ее прямо из блоков, но все же сильно затруднит парсинг инфы
    Написано
  • Как запретить кеширование данных, полученных через API?

    lastuniverse
    @lastuniverse
    N,
    3. ваш сервис содержит собственный вэб интерфейс для предоставления этих данных

    Имеется виду что помимо API вы содержите и сайт с интерфейсом для доступа к данным через браузер
    Написано
  • Как запретить кеширование данных, полученных через API?

    lastuniverse
    @lastuniverse
    и вот еще
    13. партнер в праве кэшировать у себя списковую информацию и предоставлять ссылки на нее на свой сервис
    14. партнер в праве кэшировать у себя файловую информацию и предоставлять ссылки на нее на свой сервис
    Написано
  • Как запретить кеширование данных, полученных через API?

    lastuniverse
    @lastuniverse
    Ну смотри...
    Я дал тебе API...
    А какие там у тебя пользователи - мне не интересно...))
    Понимаешь?)

    Ты имеешь отношения со мной.
    А твои пользователи - с тобой.

    И мне хотелось побеспокоится о ТВОИХ пользователях в конечном итоге, если в идеале...


    N, так, давай иначе, я перечислю требования как я их понял, ты проставишь для них да нет.

    1. сервис содержит API выдающее некую информацию
    2. информация хранится на сервисе в виде данных в БД и файлов
    3. ваш сервис содержит собственный вэб интерфейс для предоставления этих данных
    4. партнеры должны посредством API получать данные и ссылки на файлы, которыми могут делится через свои сайты
    5. каждый партнер полностью свободен в реализации своего сайта
    6. ссылки, которые предоставляют партнеры третьим лицам должны вести на сайт партнера
    7. ссылки, которые предоставляют партнеры третьим лицам должны вести на ваш сайт
    8. при этом ссылки не должны препятствовать SEO
    9. при этом вы хотите максимально затруднить автоматизированное создание копии предоставляемой информации для партнеров
    10. при этом вы хотите максимально затруднить ручное создание копии предоставляемой информации для партнеров
    11. при этом вы хотите максимально затруднить автоматизированное создание копии предоставляемой информации для третьих лиц
    12. при этом вы хотите максимально затруднить ручное создание копии предоставляемой информации для третьих лиц

    Ответьте ДА/НЕТ там где это возможно, там же где требуется развернутое пояснение сделайте его.
    Написано
  • Как запретить кеширование данных, полученных через API?

    lastuniverse
    @lastuniverse
    если копаться по сайтам могут только зарегистрированные а делится можно вообще с любыми то у зареганных показывает список чего либо и у каждого пункта есть кнопка [поделится] по нажатию которой генерится разовая ссылка вида https://domain.blabla/hash/7cxc8212x3n872cx
    Написано
  • Как запретить кеширование данных, полученных через API?

    lastuniverse
    @lastuniverse
    N, зависит от того, идет речь о зарегистрированных пользователях или о вообще любых пользователях
    Написано
  • Как запретить кеширование данных, полученных через API?

    lastuniverse
    @lastuniverse
    N, и все способы защиты которые я могу предложить напрочь убьют SEO
    Написано
  • Как запретить кеширование данных, полученных через API?

    lastuniverse
    @lastuniverse
    N, это как раз не проблема и вполне реализуемо, проблема втом как при этом защитить данные от копирования
    Написано
  • Как запретить кеширование данных, полученных через API?

    lastuniverse
    @lastuniverse
    Если без CEO то вариантов много, но с CEO вообще нет вариантов(
    Написано
  • Как запретить кеширование данных, полученных через API?

    lastuniverse
    @lastuniverse
    N, при этом надо соблюсти прозрачность для CEO?
    Написано
  • Как запретить кеширование данных, полученных через API?

    lastuniverse
    @lastuniverse
    N, раз в сутки еще терпимо. Ведь даже если будут "кэшировать" все равно зависимость от пуповины (вашего сервиса) никуда не денется. При этом даже если ваши клиенты программеры и будут честны, никто не даст гарантии что их клиенты не напишут парсер уже с их сайта. А по сему вопросы:
    - о распространении какой информации идет речь (хотя бы в общих чертах)?
    - насколько критично для бизнес плана будет появление в сети обновляемой копии распространяемой инфы скажем недельной свежести? и если критично, то почему?
    - возможно ли введение штрафных санкций к тем, у кого слита информация (способы вычислить чью копию слили есть)?
    - насколько введение данных санкций на ваш взгляд будет эффективно и почему?
    Написано
  • Как запретить кеширование данных, полученных через API?

    lastuniverse
    @lastuniverse
    N, так, подумал вот в каком ключе.
    1. мне не хватает информации о том, для чего это вообще надо (как некий абстрактный сервис или по распространяемым данным уже есть конкретика)
    2. плясать тут надо не от технической стороны а от рациональной. Объяснение так себе, попробую раскрыть:
    - ценность информации не в самой информации а в ее актуальности. т.е. если вы планируете торговать какой либо информацией по подписке через API вашего сервиса или как либо еще, надо защищать не уже проданную информацию, а ее обновления. Другими словами полноценно защищаться от кэширования нет ни смысла ни тех возможности. Лучшая защита это необходимость получения у вас свежей порции актуальной инфы. Отсюда и вопрос из пункта 1. Ответьте на него хотя бы в общих чертах, и можно будет размышлять дальше.
    Написано
  • Как запретить кеширование данных, полученных через API?

    lastuniverse
    @lastuniverse
    N, крутится в голове решение, как оформится отпишусь.
    Написано
  • Как запретить кеширование данных, полученных через API?

    lastuniverse
    @lastuniverse
    N, программистам для их сервисов так же выдавать разовые токены при каждом их запросе на инфу? для них не будет костылей, просто сгенерированная вами ссылка с токеном которую они отображают на своем сервисе (при каждом запросе от пользователей к их сервису они по апи обращаются к вам за порцией данных, которые и будут содержать новые ссылки с одноразовыми токенами)
    Написано