2

我在使用 DIGEST 身份验证从 PHP 肥皂网络服务获取授权标头时遇到问题。(PHP 客户端与 Web 服务一起正常工作)。

我收到错误 401,但在信封中找不到标题。headerIn 字段为空。

我需要以某种方式连接到网络服务 - 获取标头(主要问题),然后重新创建摘要授权标头(这很容易)并使用身份验证信息再次连接到网络服务。

有什么建议吗?

@Override
protected String doInBackground(SoapProperty... soapProperties) {
    if(this.methodName.isEmpty())
        throw new IllegalArgumentException("methodName is not specified");

    String response="";
    android.os.Debug.waitForDebugger();

    try{
        String SOAP_ACTION = this.namespace + "/" + this.methodName;
        SoapObject request = new SoapObject(this.namespace, this.methodName);

        for(SoapProperty s : soapProperties){
            request.addProperty(s.getKey(), s.getValue());
        }

        SoapSerializationEnvelope envelope;
        envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
        envelope.setOutputSoapObject(request);

        HttpTransportSE ht = new HttpTransportSE(this.url);

        ht.call(SOAP_ACTION, envelope);
        response = (String)envelope.getResponse();
    }
    catch(Exception e){
        e.printStackTrace();
        publishProgress(true);
    }

    return response;
}
4

0 回答 0