|
|
|
Получить SHA1 дайджест от объекта (Python)
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Пытаюсь работать с Thrift (IDL ниже) Код: python 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. Сгенерировал файлы, теперь пытаюсь работать с сервисом. Проблема в следующем, я не понимаю как получить дайджест. Для генерации SHA использую: dig = hashlib.sha1(), судя по описанию, то получить дайджест я могу последовательным вызовом dig.update(string). Код: python 1. реализация подписи представляется мне примерно так: Код: python 1. 2. 3. Но метод update на вход получает только строку. Соответственно у меня вопрос, как мне структуру к строке преобразовать правильно, чтобы вызвать метод? На Си этот код выглядит вот так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. Это была первая часть проблемы. Вторая часть проблемы в том, что я решил создать объект без корректного дайджеста и вызвать метод Authenticate - ожидал получить exception NotAuthorisedException, но вывалилось с: Цитата авторTraceback (most recent call last): File "./bw_client.py", line 44, in <module> client.Authenticate(bw_authreq, 'rus') File "./gen-py/bookworm/Bookworm.py", line 50, in Authenticate self.send_Authenticate(a, locale) File "./gen-py/bookworm/Bookworm.py", line 58, in send_Authenticate args.write(self._oprot) File "./gen-py/bookworm/Bookworm.py", line 213, in write self.a.write(oprot) File "./gen-py/bookworm/ttypes.py", line 161, in write oprot.writeString(self.digest) File "/usr/local/lib/python2.6/dist-packages/thrift/protocol/TBinaryProtocol.py", line 122, in writeString self.writeI32(len(str)) TypeError: object of type '_hashlib.HASH' has no len() Я нашел, где пишут про мою ошибку: вот тут , но не понял как лечить. Подскажите пожалуйста, что не так делаю. В Pythone начинающий совсем. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2012, 17:01:36 |
|
||
|
|

start [/forum/topic.php?fid=23&gotonew=1&tid=1465370]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
25ms |
get topic data: |
13ms |
get first new msg: |
8ms |
get forum data: |
3ms |
get page messages: |
40ms |
get tp. blocked users: |
2ms |
| others: | 204ms |
| total: | 320ms |

| 0 / 0 |
