如何在調用SAP接口時返回中文信息

公司的SAP項目告一段落了,但用戶指出SAP接口返回的錯誤信息是英文的,看不懂呀。

聽顧問說SAP是支持中文信息的,但是需要在調用接口時傳遞一個額外的header,叫"sap-language:zh"。


遍地google,終於讓我尋着瞭解決的辦法。原來是如此的簡單,但往往復雜的問題都有一個簡單的處理辦法。

$wsdl = "http://xxxx";
$options = array(
        'login'       => 'TEST',
        'password'    => '12345',
        'trace'       => 1,
        'stream_context' => stream_context_create(array('http' => array('header' => 'sap-language: zh')))
);
$client = new SoapClient($wsdl, $options);


在php手冊上可以找到soapclient中stream_context的描述。它的原文是:

The stream_context option is a resource for context.

再進一步的去看一下這個context,鏈接是:http://www.php.net/manual/zh/context.php

裏面介紹了stream_context_create()這個函數,用它可以構建各種請求。

所以就有了上面的解決方案。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章