मैं वेब सेवाओं पर निर्भर एक PHP अनुप्रयोग विकसित करने के लिए ग्रहण और XDebug का उपयोग कर रहा हूं। मेरे पास टेस्ट पेज हैं जो मेरी सेवाओं को 2 तरीकों से उपभोग करते हैं: AJAX (jQuery का उपयोग करके) और curl।एक PHP वेब सेवा पृष्ठ का पता लगाने के लिए XDebug का उपयोग
मैं अपने सेवा पृष्ठ में ब्रेकपॉइंट जोड़ता हूं और डीबगर लॉन्च करता हूं। जब मैं AJAX से सेवा को कॉल करता हूं, तो निष्पादन ब्रेकपॉइंट पर अच्छी तरह से बंद हो जाता है, और मुझे अपने चर, चरण-दर-चरण नियंत्रण इत्यादि मिलते हैं।
लेकिन जब मैं curl (यानी एक PHP पृष्ठ के भीतर से) का उपयोग कर सेवा कहता हूं , ब्रेकपॉइंट्स काम करने में विफल रहता है। यहां तक कि अगर मैं "पहली पंक्ति में तोड़ें" डीबगर विकल्प चालू करता हूं, तो मुझे कर्ल का उपयोग करते समय निष्पादन को रोकने के लिए नहीं मिल सकता है।
क्या यह एक डीबगर व्यवहार है? क्या मुझे अपने कर्ल कॉल में एक श्रोताओं को जोड़ने की ज़रूरत है? यूआरएल बदलें? या यह एक एक्सडीबग सीमा है?
अपना समय और प्रयास के लिए धन्यवाद, लड़का
जनवरी की कोशिश करने के लिए धन्यवाद। हाँ, मैं एक से अधिक अजाक्स कॉल डीबग कर सकता हूं और हां मेरा डीबग सत्र अभी भी ग्रहण में चल रहा है। और जैसा कि आप नीचे देख सकते हैं, मैं ' मैंने XDEBUG_SESSION_START = ECLIPSE_DBGP को मेरे कर्ल कॉल में जोड़ने का प्रयास किया - कोई फायदा नहीं हुआ। –
@ टेक टेक टेक गाय: मैं कल काम पर यह कोशिश करूंगा। मुझे 99% यकीन है कि यह मेरे लिए काम करता है, इसलिए हम इसे आपके लिए भी काम करेंगे। – janpio
हाँ, इसे फिर से प्रयास किया और यह काम करता है। आपको कुंजी की आवश्यकता नहीं है, XDEBUG_SESSION_START पर्याप्त है। फिर यह प्रत्येक ब्राउज़र में काम करता है और हर तरह से मैं सर्वर से कनेक्ट करता हूं, मेरा डीबग सत्र चल रहा है। क्या आप सी अगर कर्ल अनुरोध वास्तव में सही काम करता है तो आपके अनुरोध लॉग को दबाया? – janpio