2011-11-18 12 views
7

मैं एक ड्रूपल सर्वर से कनेक्ट करने का प्रयास कर रहा हूं। मैं अतीत में ऐसा करने में सक्षम हूं लेकिन ड्रूपल डेवलपर्स को अब मुझे एक और कुकी जोड़ने की आवश्यकता है। सर्वर उस कुकी को पंजीकृत नहीं करता है जिसे मैं नीचे भेजने की कोशिश कर रहा हूं। क्या कोई देख सकता है क्यों?सर्वर एंड्रॉइड फोन से कुकी को पहचान नहीं रहा

public static void maybeCreateHttpClient() { 
    if (mHttpClient == null) { 
     mHttpClient = new DefaultHttpClient(); 
     final HttpParams params = mHttpClient.getParams(); 
     HttpConnectionParams.setConnectionTimeout(params, 
      REGISTRATION_TIMEOUT); 
     HttpConnectionParams.setSoTimeout(params, REGISTRATION_TIMEOUT); 
     ConnManagerParams.setTimeout(params, REGISTRATION_TIMEOUT); 



     BasicCookieStore cookieStore = new BasicCookieStore(); 
     ClientCookie cookie = new BasicClientCookie("aml", key); 

     cookieStore.addCookie(cookie); 

     localContext = new BasicHttpContext(); 
     localContext.setAttribute(ClientContext.COOKIE_STORE, cookieStore); 


    } 
} 

उत्तर

5

यह पता चला है कि, मुझे कुकी, कुकस्टोर या httpcontent का उपयोग करने की आवश्यकता नहीं थी। जहां तक ​​मैं इसे समझ सकता हूं मुख्य रूप से सर्वर से आने वाली प्रबंधित कुकीज़ के लिए उपयोग किया जाता है।

मैं इतना

String key = "whatever"; 

    post.addHeader("Cookie", "aml=" + key); 

यह httppost, httpget या httput पर इस्तेमाल किया जा सकता प्रकार से हैडर स्थापना करके मेरी समस्या को हल करने में कामयाब रहे।

मुझे इस तरह के एक साधारण समाधान के लिए कुछ दिन लगे। मुझे उम्मीद है कि यह

+0

जो कुकीज _are_ आमतौर पर सर्वर से आने के बाद से समझ में आता है, है ना? – njzk2

+0

अच्छी तरह से सत्र आईडी और सत्र का नाम है, लेकिन मैं जो एमएल भेज रहा हूं वह नहीं है। समस्या यह थी कि एंड्रॉइड उन्हें संभालने पर सर्वर अलग कुकीज़ को पहचान नहीं पाएगा। तो मुझे उन्हें एक विशिष्ट तरीके से भेजने की जरूरत है। एक अल्पविराम के बजाय उन्हें अलग करने के लिए अल्पविराम के साथ। – jiduvah

-1

ओह, ठीक है अगर आप देख रहे हैं कि कुकीज क्यों नहीं जोड़े गए थे, तो आप http क्लाइंट से कुकी स्टोर नहीं प्राप्त कर रहे थे या जोड़ रहे थे। आपको क्लाइंट से कुकी स्टोर प्राप्त करना चाहिए, अपनी कुकीज़ जोड़ें, और फिर अपना अनुरोध निष्पादित करें।

+0

लेकिन उस स्थिति में यह उन कुकीज़ को भेजेगा जो इसे सर्वर से पहले ही मिल चुके थे। पूरी समस्या है। – jiduvah