2013-06-04 20 views
6

मार्ग निम्नलिखित अनुभवहीन कोड मान लिया जाये साथ जटिल GET पैरामीटर हैंडलिंग:स्लिम फ्रेमवर्क HTTP

$app->get('(/store(/:url)+)', function($url = NULL) use ($app) 
    { 
     // Execute actions on $url 
    }); 
ऊपर

निम्नलिखित के लिए ठीक काम करता है:

http://localhost/api/0001/store/url-data 

लेकिन इसके लिए विफल रहता है:

http://localhost/api/0001/store/http%3A%2F%2Fexample.com%2FSomething 
http://localhost/api/0001/store/http://example.com/Something 

// and other variations 

मैं सर्वर पक्ष पर संभालने के लिए एक पूर्ण एन्कोडेड यूआरआई पास करना चाहता हूं। मैं स्लिम के साथ ऐसा करने के लिए कैसे प्रबंधन कर सकता हूं?

नोट्स:

HTTP अनुरोध के अन्य प्रकार (पोस्ट, डाल) इस भी समस्या के लिए काम नहीं करेगा।

उसे पुन: प्रारूपित (serializing) URI के आधार पर दूसरे छोर पर हल किया जा सकता है, लेकिन मैं यह मेरा अंतिम उपाय होना चाहते हैं।

महत्वपूर्ण संपादित करें - उत्तर

तो यह पता चला है ऊपर ढांचा है जो वर्तमान में परीक्षण किया जा रहा है और उम्मीद है कि तय की और जल्द ही जारी किया गया में एक बग है। सर्वर सर्वर तक पहुंचने से पहले मैंने यूआरआई को क्रमबद्ध करके अस्थायी रूप से समस्या हल की।

+3

आप अपनी खुद की सवालों के जवाब देने और अपने खुद के जवाब^_^ –

+1

स्वीकार एक शोकहारा यूआरएल के खंड के रूप में एक यूआरएल पासिंग सबसे अच्छा समाधान ... मैं तुम्हें एक बात पैरामीटर के बजाय का उपयोग करने का सुझाव नहीं है की अनुमति है। –

उत्तर

0

तो यह पता चला है ऊपर ढांचा है जो वर्तमान में परीक्षण किया जा रहा है और उम्मीद है कि तय की और जल्द ही जारी किया गया में एक बग है। सर्वर सर्वर तक पहुंचने से पहले मैंने यूआरआई को क्रमबद्ध करके अस्थायी रूप से समस्या हल की।

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