Closed chuprik closed 11 years ago
Думаю, подписывание запросов можно отдать в WMApiRequestPerformer
, то есть передавать ему в конструктор. Он же может отдавать подписывателя в метод getXml()
или специальный метод для этого завести.
В XML от WM, указана кодировка Windows-1251, а на самом деле внутри utf-8. В итоге вырезаю информацию о кодировке в заголовке XML, такое решение не особо нравится. В принципе, работает вариант mb_convert_encoding($string, 'utf-8', 'cp1251');
, но он лично мне не нравится больше, чем первый. Нужно твое мнение.
Думаю, надо заменять кодировку в заголовке на правильную.
Тип авторизации. Делаем ли мы light?
Light пока не делаем, но надо посмотреть, что для него может понадобиться, чтобы потом полкода не переписывать. Хотя, возможно, проще сразу сделать.
Хорошо, как тебе текущий вариант Light/Classic?
Не совсем понял твой вопрос.
Сейчас в конструктор WMX19ApiRequest
, можно передать тип авторизации, по умолчанию TYPE_CLASSIC
. В зависимости от $_authType
возвращаются разные url и формирование $_sign
выполняется только при TYPE_CLASSIC
. Пойдет ли такой вариант?
Думаю, пойдет.
Попробовал реализовать валидацию. Правила получились толстоватыми. Условия сформировал на базе интерфейса X19. Нужна оценка. Код до конца самому не нравится, в особенности имена переменных. Получился некий черновик)
Создание
WMX19Request
, выглядит теперь так:Уверен, что имена свойств, например
fName
,iName
и прочие, заменяем на свое, вот предложения по замене:$_reqn
→$_requestNumber
;$_userPNomer
→$_userPassportNum
;$_userFName
→$_userLastName
;$_userIName
→$_userFirstName
.А также, вопрос в том, можно ли
sign
напрямую задавать? По логике вещей, он должен сам подписываться внутриgetXml()
. Но тогда выходит, чтоWMApiRequest
должен обращаться кWebMoney
(я считаю, что именно там у нас проинициализированныйWMRequestSigner
должен лежать (пока не полностью могу представить хранение внутриWMApiRequest
экземпляраWebMoney
)), а также мы делаем ли внутриWMApiRequest
механизм, для полученияReqN
? А еще у насgetUrl()
, будет зависеть от типа аутентификацииclassic
илиkeeper light
и опять таки завязка сWebMoney
.