Ответы пользователя по тегу API
  • Как передать значение переменной из javascript в php?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Использовав нормальное API. Там есть REST API нормальный, jsonp нужно только для старых браузеров.
    Ответ написан
  • Как устроен сервис idonethis.com?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Если я правильно понимаю, то там просто отправляется периодически письмо пользователю с его текущей задачей... да и не суть. Пользователь отвечает на письмо, сервер получает его ответ, парсит и сохраняет. Так?

    Тогда, в чем вопрос? Как на сервере ответы принимать? К сожалению не пользовался данным сервисом и регистрироваться там не планирую, так что смогу подсказать чего только если вы опишите подробнее что именно вызывает у вас затруднения.
    Ответ написан
  • Что лучше для организации REST API (с хранилищем MongoDB)? Nodejs или PHP?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    для RestAPI простенькой норм. По производительности - жрет больше памяти чем PHP но зато быстрее работает и позволяет поднять RPS. Так же неплохой практикой было бы поднятие нескольких инатансов приложения (по одному на ядро и оставить одно ядро про запас) и проксировать запросы через nginx на эти инстансы.

    Для монги + RestAPI вполне оправданно. Если брать еще какой фреймворк типа express или чего более специфичное, то проблем особо не должно быть. К сожалению (или к счастью) монгу н продакшене я пробовал лишь однажды, расстроился и забил. На node.js обычно держу демоны для рассылки нотификаций (APNS/GCM/WebSockets).
    Ответ написан
    Комментировать
  • Стоит ли разделять сайт на backend и frontend?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Это называется Singe Page Application.

    Если вас не смущает геморой с индексацией сайта в поисковике - подход весьма оправдан.

    Плюсы:
    - ослабление связей внутри системы, упрощается серверная часть (по сути у вас там красивая REST Api должна быть)
    - общее увеличение отзывчивости системы (если грамотно спроектировать фронтэнд)
    Минусы:
    - общее время разработки может увеличиться в зависимости от проекта.
    - необходимость добавлять на сервере генерацию page fragments для поддержки поисковиками. Есть конечно варианты использовать на сервере phantomjs для создания этих самых фрагментов.
    Ответ написан
    1 комментарий
  • Создание сервиса: нативное мобильное приложение + API сервиса. Что к чему? Что отдавать?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Написать простенькое приложенице под iOS/Android может даже ребенок. Я конечно слегка утрирую, но путем гугления и чтения мануалов можно довольно быстро разобраться с основами. Простенький клиент на той же Java написать вообще не проблема.

    Вы же можете написать клиент для вашей RESTfull API на PHP? Если нет, у вас проблемы с PHP и программированием в целом. Если да, проблемы написать нативное приложение для любой платформы (если это не какие-то сложные вещи а просто клиент для апишки и UI) сложностей не должно вызвать.
    Ответ написан
  • Как реализовать контролируемый доступ к API из приложения на JS & HTML?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Никак. Можно попробовать ввести что-то типа RSA с ключами для приложения, и обмениваться в заголовках какой-то подписью и т.д. Что до "раздербанивания" - любой сниффер покажет как общаться со сторонней апишкой.
    Ответ написан
    Комментировать
  • Как работать с удаленными API через Angular?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Cross-origin resource sharing оно хочет.

    Решения проблемы (в порядке адекватности, если можно так сказать):
    • свой прокси для этой апишки на сервере с поддержкой CORS/Jsonp
    • писать разработчику API-сервиса что бы добавили поддержку CORS.
    • запускать браузер с отключенным web-security (не знаю как для других, но в хроме это флаг --disable-web-security).


    Апишка о которой вы говорите создавалась для использования в приложениях, где нету таких вещей как кросдоменные запросы в принципе. Так что о поддержке для браузерного JS никто особо не думал. На phonegap-приложения так же не распространяются ограничения на кросс-доменные запросы.
    Ответ написан
  • Как лучше организовать доступ к REST API

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    ключи передаются в заголовках, а не в get/post параметрах. Так что с кешированием никаких проблем.
    Ответ написан
    Комментировать
  • Как получить частоту?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Начнем с того что звук в микрофон поступает не одной частоты. Это целый спект частот. Метод getByteFrequencyData этот спектр и возвращает, точнее... он делит спектр на части, каждый элемент которого определяет, проще говоря, среднюю громкость звука на этих частотах.

    Вы скажите что вам нужно сделать? Спектрограмму вывести?
    Ответ написан
    8 комментариев
  • Как создать сервер, который предоставит API?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    База данных - любая. mysql/sqlite/postgres/mongodb... зависит только от того что вы там хранить будете.

    Язык - любой. .net (mono)/java, php/python/ruby/js. Если знаете хотя бы паскаль - golang.

    Взаимодействие с клиентом (непосредственно api) - RESTFull.
    Ответ написан
    Комментировать
  • Какой есть бесплатный web-socket server?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Да купите вы уже VPS, темболее если у вас маленький проект то сильно дорогой vps и не нужен. возьмите какой за 5 баксов в месяц на digitalocean каком и живите спокойно...

    Есть так же штуки типа pusher, можете поискать...
    Ответ написан
  • Как подключить Telegram API в MVS 2012 к проекту на C#?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    https://core.telegram.org/ - в чем проблема заимплементить протокол?
    или поискать на гитхабе хотя бы прототипы/наброски/готовые решения?
    Нормальные имплементации есть на той же java, портировать не так уж и сложно.
    Ответ написан
  • Как продавать скрипт?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    продавайте доступ к api, что ж тут такого. Для доступа к api скажем нужно создать аккаунт на вашем сервисе и получить токен для доступа.
    Ответ написан
    Комментировать
  • Где можно почитать доступно об общих принципах работы с api?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    ru.wikipedia.org/wiki/REST
    habrahabr.ru/company/SECL_GROUP/blog/204510

    Что именно вам не понятно в концепции rest?
    Ответ написан
    Комментировать
  • Web сервер на C#, как сделать API для клиента?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Читайте про Restfull сервисы. Статей миллион, все очень просто... Писать за вас api никто не будет, а примеров с реализацией под .NET море.
    Ответ написан
    Комментировать
  • PUT & POST при написании API

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    POST запрос подразумевает создание записи, результатом ее должены быть пустое тело ответа и заголовок location c uri нового объекта.

    PUT — подмена записей. Тобиш обновить одно какое-то поле у записи нельзя. Опять же, если вы заменили объект — то вы уже имеете на руках все нужные данные, посему ответом может быть опять же заголовок location.

    есть еще метод PATCH, который позволяет именно обновлять запись (конкретное поле или несколько из них). Тут тоже подразумевается возврат только URI. По сути какие либо данные вам может вернуть только GET запрос.

    И есть еще куча заморочек со статус кодами, мол 200 это хорошо только для GET, так как оно имеет тело ответа. А для большинства других нужен 204, который говорит что все хорошо, но есть только заголовки.

    НО… это если по феншую и именно RESTFull, причем это далеко не все. Обычно дальше GET/POST/PUT/DELETE никто не идет… PATCH вообще редко используют, а вот LINK вообще ниразу не видел что бы на реальных проектах применяли…
    Ответ написан
    Комментировать
  • Как писать API?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Статей хватает, можете конечно написать, но врят-ли что-то-новое выйдет.

    Структуру методов, что и как должно возвращать лучше обсудите с iOS разработчиком, который будет потом имплеменить это дело. Если такого нету — максимально разбейте все на атомарные операции, упростите взаимодействие, прикиньте сами какие методы могут понадобиться (представьте что вы пишете API не для кого-то, а, например, для странички, которая через AJAX все выдерает).

    По поводу реализации — банальная сериализация вместо рендринга, больше отличий нету. Есть куча готовых компонентов которые хорошо подходят для сериализации туда и обратно. Свой такой компонент тоже пишется достаточно быстро.

    Для авторизации обычно применяют токен-авторизацию. Мол при авторизации пользователю выдается уникальный токен (рандомная строка), который он потом шлет в заголовках каждый раз при обращении к методам API. Это можно сделать как отдельную прослойку.

    Я не видел ни одного RESTfull API для серьезных приложений, тобиш да, оно то REST но не полностью, так что заморачиваться тут не стоит. Достаточно просто обрабатывать какие-то базовые заголовки и GET/POST запросы. GET для выборок — тобиш данные в базе при запросе не меняются, разве что какие счетчики, а POST для создания записей в базе (по феншую результат работы функции должен возвращаться только HTTP заголовки, среди которых есть GET запрос с URI нового объекта, но на практике никто не париться и возвращает весь объект или его часть).

    Можно конечно воспользоваться SOAP апишками, но по опыту скажу что оно годно только при разработке оочень простых API, и толку от него мало. Если клиентом, конечно, будет приложение написанное на C# .NET — тогда смело SOAP и только SOAP, вам по сути разницы в реализации (имеется в виде по времени) минимум, а разработчику клиента будет намного проще. А вот на iOS с SOAP все достаточно печально.
    Ответ написан
    Комментировать
  • Движок для создания API

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Я обычно API-шки на Yii пишу, удобно, быстро и гибко.
    Ответ написан
    2 комментария