zoukankan      html  css  js  c++  java
  • 使用suds+pythonntlm访问SharePoint Web Service (完美解决Windows的NTLM验证问题)

    SharePoint Server 2007 默认是使用ntlm协议验证用户登陆用户的,只使用python常用的WebService 工具包是无法通过NTLM验证的.经过研究,终于找到了完美的解决方案。
      python-ntlm(官网地址:http://code.google.com/p/python-ntlm/)模块给urllib2模块提供了ntlm验证功能,而suds是基于urllib2实现的Web Service工具包,所以只要把两者结合来使用就可以实现python访问SharePoint Web Service的功能了。
      经过研究suds的代码发现,suds是通过使用Transport进行基本的用户验证,它只提供了一个简单的HttpTransport。当然,这个HttpTransport是不支持NTLM验证,所以我实现了自已的WindowsTransport来解决这个问题。
      
    WindowsTransport      
    在代码里,WindowsTransport是继承HttpTransport,关键是通过python-ntlm的HTTPNtlmAuthHandler完成urlopener的创建,由这个opener里完成ntlm验证。
      最后是测试代码:
    Test
      输出的结果:
    Result
  • 相关阅读:
    关于jQuery方法解析(一)append-参数设置问题
    CSS动画
    关于html CSS 绝对相对布局问题
    Chrome自带的开发者工具使用方法教程
    web常见漏洞及防范方法
    前端性能优化 Web前端应该从哪些方面来优化网站?
    属性的特征描述可以分为两类:数据属性和访问器属性
    iScroll.js的用法
    百度前端学院在线学习参考资料
    GET和POST的区别,何时使用POST?
  • 原文地址:https://www.cnblogs.com/flysun/p/1570705.html
Copyright © 2011-2022 走看看