Tôi có một chức năng chung mà tôi sử dụng để chuyển các lệnh SOAP. Tôi cần xem dữ liệu XML RAW đang được gửi tới máy chủ để chẩn đoán lỗi. Làm thế nào để làm điều đó?Làm thế nào để tôi xem đầu ra "raw xml" từ nusoap?
5
A
Trả lời
15
Đừng bận tâm, điều này có vẻ khá gần với dấu chấm!
http://www.scottnichol.com/nusoapintro.htm
echo '<h2>Request</h2>';
echo '<pre>' . htmlspecialchars($client->request, ENT_QUOTES) . '</pre>';
echo '<h2>Response</h2>';
echo '<pre>' . htmlspecialchars($client->response, ENT_QUOTES) . '</pre>';
// Display the debug messages
echo '<h2>Debug</h2>';
echo '<pre>' . htmlspecialchars($client->debug_str, ENT_QUOTES) . '</pre>';
1
Trong khi đây là một bài cũ tôi muốn vào trong chip với phiên bản riêng của tôi về câu trả lời tzmatt.
class soapBug {
/*
* @var obj $debug client object
* @var string $what Just a name for the header so you know
* what you are looking at.
*/
public function bug($debug, $what) {
/* ive stayed with the original here, but you could look at
* http://www.php.net/manual/en/tidy.repairstring.php to
* output in clean xml.
*
* I just grab the line i need and paste
* it into my IDE and let it format for me, works just as well
* and no coding to fiddle with for something that wont be
* permanent on my project.
*/
echo '<h2>' . $what . '</h2>';
echo '<pre>' . htmlspecialchars($debug, ENT_QUOTES) . '</pre>';
}
}
class someClass {
private $de;
// private to this class to prevent accidental call
// outside the class.
public function __construct() {
$this->de = new soapBug;
}
public function thatNeedsDebugging() {
/*
* Simple enough to debug your client now no need to copy
* the html block all over you can debug with just one line
* of call all of them
*/
$this->de->bug($client->request, 'Request'); // I grab this output string
$this->de->bug($client->response, 'Response');
$this->de->bug($client->debug_str, 'Debug');
}
}