|
Web-сервис вызов из PHP авторизация | ☑ | ||
---|---|---|---|---|
0
dzsysop
13.07.11
✎
21:52
|
Есть скрипт на PHP вызывающий простой вебсервис Hello World! из пустой конфигурации 1с 8.2.
Все работает при пустом списке пользователей. Делаю следующий шаг создаю пользователя в 1С. Вебсервис перестает отвечать, что в принципе ожидаемо. Вопрос: как передать имя и пароль при вызове веб сервиса? вот так оно работает с пустым списком пользователей: $client= new SoapClient("http://хххх.ком/InfoBase2/ws/empty_ws1.1cws"); $response=$client->HelloWorld()->return; echo $response; где что подправить? |
|||
1
aleks-id
13.07.11
✎
21:56
|
SoapClient("user:pass@http:.....
|
|||
2
dzsysop
13.07.11
✎
21:56
|
хм... сейчас попробую
|
|||
3
dzsysop
13.07.11
✎
21:58
|
попробовал.
Мимо! |
|||
4
aleks-id
13.07.11
✎
21:59
|
поди юзера на кириллице завел? заведи юзера 111 с паролем 222
|
|||
5
dzsysop
13.07.11
✎
21:59
|
нет латиница
admin:admin123 |
|||
6
Абырвалг
13.07.11
✎
22:00
|
в default.vrd пропиши usr=;pwd=
|
|||
7
dzsysop
13.07.11
✎
22:01
|
не хочется прописывать дефолтные значения,
но сейчас поиграюсь и с этим, но вопрос остается открытым. |
|||
8
aleks-id
13.07.11
✎
22:07
|
а если так?
SoapClient("http://user:pass@хххх.ком/InfoBase2/ws/empty_ws1.1cws"); |
|||
9
dzsysop
13.07.11
✎
22:10
|
так немного лучше, но все равно непонятно
|
|||
10
dzsysop
13.07.11
✎
22:11
|
пенрвая строка там где инициализируется SOAP ошибки не выдает, а вот при вызове метода - ругается на неавторизацию
|
|||
11
aleks-id
13.07.11
✎
22:17
|
$client->ConnectorProperty("AuthUser") = "admin";
$client->ConnectorProperty("AuthPassword") = "admin123"; $client->ConnectorProperty("WinHTTPAuthScheme") = 1; |
|||
12
dzsysop
13.07.11
✎
22:21
|
Fatal error: Can't use method return value in write context
$client->ConnectorProperty("AuthUser") = "admin"; |
|||
13
dzsysop
13.07.11
✎
22:23
|
$client->AuthUser = "admin";
$client->AuthPassword = "admin123"; $client->WinHTTPAuthScheme = 1; скушал, но не помогло |
|||
14
egor2fsys
13.07.11
✎
22:24
|
Мы авторизацию к базе прописывали, как верно заметили в (6) в
default.vrd Нюанс был такой, что имя пользователя обязательно должно быть латиницей и вроде бы было регистро-зависимым. А это WinHTTPAuthScheme не поможет, ибо там не обычная HTTP Basic авторизация вроде. |
|||
15
dzsysop
13.07.11
✎
22:31
|
подправил вот так
<point xmlns="http://v8.1c.ru/8.2/virtual-resource-system" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" base="/InfoBase2" usr="Admin" pwd="admin123" ib="File="хххххх.ком\InfoBase2";"> <ws> <point alias="empty_ws1.1cws" name="WebService1"/> </ws> |
|||
16
dzsysop
13.07.11
✎
22:31
|
не работает,
убрал в РНР юзера и пароль, чтобы не конфликтовали - не работает куда копать дальше? |
|||
17
Абырвалг
13.07.11
✎
22:33
|
ib="File="хххххх.ком\InfoBase2"usr=admin;pwd=admin123;"
|
|||
18
dzsysop
13.07.11
✎
22:39
|
\InfoBase2"usr=Admin;pwd=admin123;
не помогает |
|||
19
aleks-id
13.07.11
✎
22:42
|
$client->ConnectorProperty("AuthUser","admin");
$client->ConnectorProperty("AuthPassword","admin123"); |
|||
20
dzsysop
13.07.11
✎
22:47
|
Алекс, я в (13) написал, что установил эти свойства, но оно не помогает!!
а твой последний пост - РНР ругается на синтаксис. |
|||
21
Абырвалг
13.07.11
✎
23:01
|
вместо pwd попробуй psw
|
|||
22
dzsysop
13.07.11
✎
23:29
|
итак, долгожданная победа!!!
$client= new SoapClient("хххххх.ком/InfoBase2/ws/empty_ws1.1cws?wsdl", array( 'login' => 'Admin', 'password' => 'admin123')); и все!! vrd можно не трогать!!! работают и другие варианты создания как например (8) но главное!!! обращаю внимание, проблема была как всегда в другом месте, не забудьте дать права на выполнение данного метода вебсервиса нужному юзеру!!! может я один такой тупой, но се ля ви!!! разработка с нуля - соответственно и баги с нуля! :-) всем спасибо за участие, терпение и советы! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |