本帖最后由 yuanxing008 于 2014-10-26 15:59:33 编辑

解决方案 »

  1.   

    这种时候可以用抓包工具抓他们给的demo发出去的包和发回来的包,看看包结构是怎么样的,再自己用PHP对着文档拼包,注意编码和补码的问题。
    windows下可以用 wireshark 抓包工具,挺好用。
      

  2.   

    既然有 只有c#和java验证的demo片断
    那么请帖出来
      

  3.   

    4.3.2C# 调用接口 webservice header 验证代码片段
    private void button1_Click(object sender, EventArgs e)
            {
                try
                {
                    ym.TrjnSearchServiceEndPointService trjn = new WindowsApplication2.ym.TrjnSearchServiceEndPointService();
                    ICredentials credentials = new NetworkCredential("用户名称", "用户密码");
                    trjn.Credentials = credentials;
                    ym.TranItemDTO[] trans = trjn.tranItem();
                    listBox1.Items.Clear();
                    foreach (ym.TranItemDTO var in trans)
                    {
                        listBox1.Items.Add(var.trancode + "  " + var.tranname);
                    }
                    this.Text = trans.Length.ToString();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
           }
      

  4.   

    4.3.3Java调用接口 webservice header 验证代码片段String endpoint="http://192.168.10.70:8080/school/services/TrjnSearchService?wsdl";
     Service service=new Service();
     Call call=(Call) service.createCall();//回调服务
     call.setUsername("用户名称");
     call.setPassword("用户密码");//用户认证
     call.setTargetEndpointAddress(new java.net.URL(endpoint));
    // call.setOperationName("sayHelloG");
     call.setOperationName(new QName("http://www.w3.org/2001/XMLSchema", "getSessionId"));//设置指定的命名空间,根据wsdl文件来决定
     String ret=(String)call.invoke(new Object[] {});
     System.out.println(ret);