|
3 / 3 / 3
Регистрация: 23.09.2013
Сообщений: 48
|
|
Написание клиент-серверного приложения29.01.2014, 20:04. Показов 18437. Ответов 5
Метки нет (Все метки)
Доброго времени дня! Передо мной встала задача разработки клиент-серверного приложения под андроид. До этого писал только дэсктоп и поэтому мало знаком с соответствующими технологиями.
Вопросы: Как и где найти подходящий сервер? Как написать API для него (подразумевается обмен локальной БД с БД сервера и авторизация)? Как работает регистрация и авторизация на сервере? Как отправлять с сервера данные в приложение? И еще: ищу ментора по данной тематике, очень интересно и актуально сейчас для меня.
0
|
|
| 29.01.2014, 20:04 | |
|
Ответы с готовыми решениями:
5
Архитектура клиент серверного приложения Архитектура клиент-серверного приложения с off-line режимом
|
|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
|
| 29.01.2014, 21:29 | |
|
Присоединяюсь к вопросу. Тоже интересно!
Лично я бы написал на PHP примитивную прослойку/регистрацию, авторизация через ключ в строке URL, там-же параметры для запроса к базе... Назад в андроид возвращал бы текстовик с ответом, возможно даже в zip-файле. Но это для одноразовых и главное редких и больших запросов (например на глобальное обновление баз) или мелких "подтверждений заказов". Но если хочется "подключиться", поработать в базе клиентов пока онлайн и отключиться - нужен другой, "правильный" метод... Слышал что для этого есть библиотеки для подключения к MySQL...
0
|
|
|
3 / 3 / 3
Регистрация: 23.09.2013
Сообщений: 48
|
||||||
| 30.01.2014, 14:27 [ТС] | ||||||
|
фишка то вот в чем, если это просто сайт был бы, то там все понятно, типичная авторизация через кукиз. Но на мобильном телефоне вместо кукиз должен использоваться похожий механизм, вроде какого нибудь токена в приложении, который бы указывал, что пользователь авторизирован. Я хочу узнать, есть ли какой то унифицированный метод решения этой проблемы или каждый по своему решает. Если что найдешь(найдете) прошу отписаться, пока я решаю проблему через RPC на сервере, просто вызов скрипта
1
|
||||||
|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
|
| 30.01.2014, 18:07 | |
|
Чисто теоретически... если получится полностью авторизироваться на сервере, то можно раз в секунду получать микространицу (например на PHP) "авторизирован ли я" с текстовой начинкой "1" или "0"... И от него зажигать/гасить индикатор "Online"... но это не прямое общение с базой!
0
|
|
|
|
|||||||||||||||||||||||||||||||||||||||
| 30.01.2014, 19:09 | |||||||||||||||||||||||||||||||||||||||
Сообщение было отмечено ChristmasSocks как решение
Решение
ChristmasSocks, Tester64,
вроде тут ничего сложного нет. Есть две стороны: сервер и клиент. Сначала стоит определиться с платформой. Это может быть сервер на базе php, c# asp.net/mvc, java, node.js и так далее. В самом-самом вкратце, вебсервер получает запрос. С помощью раутинга определяем метод, который будет получать этот запрос. За раутинг в разных технологиях отвечают разные механизмы, так в spring mvc java это servlet dispatcher, в node.js это (как правило) express модуль, для c# asp.mvc это global routes и так далее. Скоп этих ваших методов и будут представлять собой API. Часть клиента - как хотите. Делаем запрос на сервер по определённому endpoint'у, получаем ответ. Всё. Вы спрашиваете про авторизацию. Для авторизации обычно используется token. Ключ, по которому веб сервер будет определять кто мы и как нас зовут. Токен будем слать в header. Но давайте посмотрим это на практике. Я буду использовать node.js express: WebStorm нагенерил сразу шаблон, покажу самое важное.
Теперь обработчики запросов: routes/index.js
конец поста №1 ![]() Добавлено через 15 минут Клиент:
Успешная авторизация - выдали token, такой хэш-ключ. Пока он есть, ставим его в заголовок и все запросы идут с ним.
Это простейший пример. Для авторизации можно использовать готовые инструменты, типа passport (для js), membership api (для c# asp.net) и так далее.
2
|
|||||||||||||||||||||||||||||||||||||||
|
14 / 14 / 5
Регистрация: 08.04.2013
Сообщений: 75
|
|
| 05.06.2014, 09:25 | |
|
Можно что нибудь такое посмотреть: http://habrahabr.ru/post/151949/
0
|
|
| 05.06.2014, 09:25 | |
|
Помогаю со студенческими работами здесь
6
Что использовать для реализации клиент-серверного приложения? Назовите приемущества клиент-серверного Android-приложения, над Web-приложением
Написание клиент-серверного приложения в среде Borland c++ Вход в современное программирование с написание клиент-серверного приложения Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2).
Унарный минус обозначается как !
*/
#include <iostream>
#include <stack>
#include <cctype>. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|