2016-04-21 16 views
13

के लिए मैं एक GraphQL सेवा है कि मैं किसी iOS एप्लिकेशन से हिट करने के लिए की जरूरत है, और मुझे सर्वेक्षण करने क्या मेरे विकल्प इस उद्देश्य की दिशा में सक्षम क्लाइंट लाइब्रेरी पर कर रहे हैं कोशिश कर रहा हूँ। मेरी प्रारंभिक छाप यह है कि वहां बहुत अच्छे विकल्प नहीं हैं, और मैं इस बात से थोड़ा आश्चर्यचकित हूं क्योंकि फेसबुक के मोबाइल ऐप को हमेशा ग्राफक्लुएल के लिए प्रेरक सामग्री के बीच उद्धृत किया जाता है।GraphQL क्लाइंट लाइब्रेरी आईओएस

क्या इस प्रकार मेरी विकल्पों में से मेरे वर्तमान समझ है। मेरे प्रश्न हैं: मैं क्लाइंट लाइब्रेरी विकल्प क्या देख रहा हूं? यदि आप आईओएस के लिए आदर्श ग्राफक्लुएल क्लाइंट लाइब्रेरी की कल्पना करना चाहते हैं, तो मैं भी उत्सुक हूं, यह कैसा दिख सकता है?

  1. बस Alamofire, AFNetworking, या NSURLSession सीधे, में गुजर प्यार से हाथ से तैयार किए Query Documents और एक Dictionary जिसके परिणामस्वरूप JSON का प्रतिनिधित्व करने के माध्यम से spelunking, या
  2. Chester
  3. GraphQLicious
  4. Swift-GraphQL
+0

मैं एक जावास्क्रिप्ट GraphQL ग्राहक का उपयोग कर के बारे में सोच रहा था , अपोलो http की तरह: //docs.apollostack.com/apollo-client/, नेटवर्क कॉल संभाल परिणाम या त्रुटियों आदि यह बंडल लौट अनुप्रयोग के साथ और JavaScriptCore का उपयोग कर इसे चलाने के लिए कुछ जे एस कार्यों को लागू है, यहाँ अच्छा ट्यूटोरियल https है: //www.raywenderlich।कॉम/124075/जावास्क्रिप्टकोर-ट्यूटोरियल –

+0

अद्यतन: अभी पता चला है कि जावास्क्रिप्ट में चल रहे जावास्क्रिप्ट नेटवर्क तक नहीं पहुंच सकता है, वहां कोई http अनुरोध कार्यान्वयन नहीं है और इसकी शुद्ध ईसीएमएस्क्रिप्ट है, इसलिए नेटवर्क भाग मूल कोड होना चाहिए, या (यह कहने से नफरत है) जेएस एक छिपा वेबव्यू में चल रहा है ... मेरी इच्छा है कि स्विफ्ट में ग्राफक्लुएल क्लाइंट के परिपक्व कार्यान्वयन थे, अगर आपको कोई मिल गया तो कृपया मुझे बताएं ... चीयर्स। –

+2

मैंने आज सुबह इस बारे में सीखा: https://github.com/apollostack/apollo-ios – pohl

उत्तर

7

मैं हाथ से प्रश्न नहीं बनाऊंगा, और मुझे लगता है कि चेस्टर और ग्राफक्लुशियस डब्ल्यू दोनों आपके लिए ठीक हो सकता है। अगर मैं सही पुस्तकालय की कल्पना की थी, यह केवल प्रश्नों का निर्माण नहीं होना चाहिए, लेकिन यह भी स्विफ्ट वस्तुओं में परिणाम पार्स। यह, जैसा कि आप जेएसओएन पार्सिंग पुस्तकालयों से जान सकते हैं, एक छोटा सा काम नहीं है और यही कारण है कि अधिकांश ग्राफक्यूएल-बिल्डर पुस्तकालय इसे नहीं करते हैं।

प्रकटीकरण: मैं GraphQLicious

7

के पीछे लोग यह सवाल एक लंबे समय पहले कहा गया था में से एक हूँ - मैं आज लगता है कि यह करने के लिए मानक जवाब Apollo Client उपयोग करने के लिए किया जाएगा।

यह वेब पर अपोलो ग्राहक के रूप में एक ऐसी ही API का उपयोग करता है और वास्तव में अच्छा सुविधाओं की एक जोड़ी है:

GraphQL प्रश्नों के आधार पर
  • स्टेटिक प्रकार पीढ़ी & उत्परिवर्तन
  • सामान्यीकृत कैश
  • क्वेरी देख & स्वत: यूआई अद्यतन
  • मैनुअल दुकान अपडेट

यह अभी तक 1.0 तक नहीं पहुंच पाया है लेकिन कुल मिलाकर एक सुपर वादाकारी परियोजना है!

यहां कुछ संसाधन है कि मदद करनी चाहिए आप आरंभ कर रहे हैं:

संबंधित मुद्दे