Witajcie,
chciałbym zrobić api dla serwisu, które było by realizowane za pomocą JSONa;
Na zewnatrz wystawiamy dane, o które są z zewnątrz requesty. Także robione inserty do DB z JSONa.
Wszystko realizowane po autoryzacji - klucza dla usera API.
Czy coś wiecie na ten temat, macie jakieś wskazówki, materiały ?
Bo chciałbym napisać Apkę na iOSa, która by łączyła się z moim serwiswm i wysyłała requesty do niego, a serwis by wysyłał do apki responsy, wszystko realizowane za pomocą JSONa.
JSON - API dla serwisu
Rozpoczęty przez
stolik
, 03 kwi 2013 18:31
7 odpowiedzi w tym temacie
#1
Napisano 03 kwietnia 2013 - 18:31
#3
Napisano 04 kwietnia 2013 - 07:15
Pogubiłem się. Szukasz podpowiedzi w kwestii strony serwerowej czy klienta?[...]chciałbym zrobić api dla serwisu, które było by realizowane za pomocą JSONa;
Na zewnatrz wystawiamy dane, o które są z zewnątrz requesty. Także robione inserty do DB z JSONa.
#4
Napisano 07 kwietnia 2013 - 14:28
Dzięki za RestKit - wygląda przyzwoicie.
Generalnie chodzi mi o rozwiązanie po stronie serwera i klienta, komunikację z obu stron.
Klient odpytuje serwer, serwer realizuje dane requesty.
#5
Napisano 07 kwietnia 2013 - 16:54
W kwestii strony klienckiej w iOS nie podpowiem. Po stronie serwerowej najlepiej napisać serwis REST'owy. Realizuje on dokładnie to co opisałeś. Odbiera żądania od klienta, umożliwia autentykacje, komunikuje się z bazą wysyła odpowiedzi do klienta. Język zależy od hostingu.
#6
Napisano 13 kwietnia 2013 - 10:55
Jak będziesz dopiero pisał api i apke to polecam MessagePack
MessagePack: It's like JSON. but fast and small.
Binary JSON
Rozwiązanie szybkie i mega proste.
MessagePack: It's like JSON. but fast and small.
Binary JSON
Rozwiązanie szybkie i mega proste.
#7
Napisano 22 kwietnia 2013 - 20:37
@aLP - ciekawe rozwiązanie, ale na chwilę obecną moim celem jest JSON.
Co do RestKit:
Napotkałem pewien problem, stworzyłem na serwer, gdzie wysyła w odpowiedzi jsona:
Nie umiem wydrukować na ekran konsoli, w Xcode tych danych:
W Głównym widoku(*.m), w - (void)viewDidLoad, mam:
w nagłówku mam instancje dla pól mapowania.
Po uruchomieniu skryptu mam w konsoli:
w jaki sposób dobrać się do wartości kluczy z jsona ?
Co do RestKit:
Napotkałem pewien problem, stworzyłem na serwer, gdzie wysyła w odpowiedzi jsona:
{"products":[{"id_product":"1","name":"milk","price":"2.50"}]}
Nie umiem wydrukować na ekran konsoli, w Xcode tych danych:
W Głównym widoku(*.m), w - (void)viewDidLoad, mam:
//Przygotowanie mapy na obiekty
RKObjectMapping * myMapping = [RKObjectMapping mappingForClass:[self class]];
[myMapping addAttributeMappingsFromDictionary:@{
@"id_product" : @"ids",
@"name" : @"product",
@"price" : @"price"
}];
RKResponseDescriptor *responseDescriptor = [RKResponseDescriptor responseDescriptorWithMapping:myMapping pathPattern:nil keyPath:@"products" statusCodes:RKStatusCodeIndexSetForClass(RKStatusCodeClassSuccessful)];
NSURL *URL = [NSURL URLWithString:@"http://localhost/JSON-iOS/"];
NSURLRequest *request = [NSURLRequest requestWithURL:URL];
RKObjectRequestOperation *objectRequestOperation = [[RKObjectRequestOperation alloc] initWithRequest:request responseDescriptors:@[ responseDescriptor ]];
[objectRequestOperation setCompletionBlockWithSuccess:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) {
RKLogInfo(@"Load collect of all products: %@", mappingResult.array);
} failure:^(RKObjectRequestOperation *operation, NSError *error) {
RKLogError(@"Failed with error: %@", error);
}];
[objectRequestOperation start];
w nagłówku mam instancje dla pól mapowania.
Po uruchomieniu skryptu mam w konsoli:
2013-04-22 21:36:35.665 FirstApp[686:c07] I restkit:RKLog.m:34 RestKit logging initialized... 2013-04-22 21:36:35.870 FirstApp[686:3807] ADDRESPONSE - ADDING TO MEMORY ONLY: http://localhost/JSON-iOS/ 2013-04-22 21:36:35.877 FirstApp[686:c07] ADDRESPONSE - ADDING TO MEMORY ONLY: http://localhost/JSON-iOS/ 2013-04-22 21:36:35.880 FirstApp[686:c07] I restkit.network:RKHTTPRequestOperation.m:154 GET 'http://localhost/JSON-iOS/' 2013-04-22 21:36:35.881 FirstApp[686:c07] I restkit.network:RKHTTPRequestOperation.m:185 GET 'http://localhost/JSON-iOS/' (200 OK) [0.0005 s] 2013-04-22 21:36:35.882 FirstApp[686:c07] I app:ViewController.m:37 Load collect of all products: ( "<ViewController: 0x767d330>" )
w jaki sposób dobrać się do wartości kluczy z jsona ?
#8
Napisano 08 maja 2013 - 20:15
Na którego iOS targetujesz aplikację?
Od 5.x masz możliwość natywnego parsowania JSON bez zewnętrznych bibliotek
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych