Это веб-сервис
Это код 1С
Подключение ВС определения выполняется, подключение прокси выполняется, авторизацию проходит. (данные в примере по подключению стёрты)
Ошибка при попытке выполнить метод GO.
Ошибка: Не найден метод GO
В чем может быть проблема?
| Код |
|---|
<?
if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true) die();
if(!CModule::IncludeModule("webservice") || !CModule::IncludeModule("iblock"))
return;
// наш новый класс наследуется от базового IWebService
class CAddNewsWS extends IWebService
{
// метод GetWebServiceDesc возвращает описание сервиса и его методов
function GetWebServiceDesc()
{
$wsdesc = new CWebServiceDesc();
$wsdesc->wsname = "bitrix.webservice.addnews"; // название сервиса
$wsdesc->wsclassname = "CAddNewsWS"; // название класса
$wsdesc->wsdlauto = true;
$wsdesc->wsendpoint = CWebService::GetDefaultEndpoint();
$wsdesc->wstargetns = CWebService::GetDefaultTargetNS();
$wsdesc->classTypes = array();
$wsdesc->structTypes = Array();
$wsdesc->classes = array(
"CAddNewsWS"=> array("GO"=>array( "type" => "public", "httpauth" => "Y", "output" => array(
"msg" => array("varType" => "string")),"input" => array( "NAME" => array("varType" => "string")) ),
"AddNews" => array(
"type" => "public",
"input" => array(
"NAME" => array("varType" => "string"),
"DATE" => array("varType" => "string"),
"PREVIEW_TEXT" => array("varType" => "string"),
"DETAIL_TEXT" => array("varType" => "string"),
"KEYWORDS" => array("varType" => "string"),
"SOURCE" => array("varType" => "string"),
),
"output" => array(
"id" => array("varType" => "integer")
),
"httpauth" => "Y"
),
)
);
return $wsdesc;
}
}
function GO($NAME)
{
return Array( "msg" => $NAME);
}
function AddNews($NAME, $DATE, $PREVIEW_TEXT, $DETAIL_TEXT, $KEYWORDS, $SOURCE)
{
$iblock_permission = CIBlock::GetPermission(3);
if ($iblock_permission < "W")
{
$GLOBALS["USER"]->RequiredHTTPAuthBasic();
return new CSOAPFault('Server Error', 'Unable to authorize user.');
}
return "Hi";
return new CSOAPFault( 'Server Error', 'Error: '.$ib_element->LAST_ERROR );
}
$arParams["WEBSERVICE_NAME"] = "bitrix.webservice.addnews";
$arParams["WEBSERVICE_CLASS"] = "CAddNewsWS";
$arParams["WEBSERVICE_MODULE"] = "";
// передаем в компонент описание веб-сервиса
$APPLICATION->IncludeComponent(
"bitrix:webservice.server",
"",
$arParams
);
die();
?>
|
| Код |
|---|
Определение = Новый WSОпределения("", "", "");
Прокси = Новый WSПрокси(Определение, Параметры.URIПространстваИменСервиса, Параметры.ИмяСервиса, Параметры.ИмяТочкиПодключения);
Прокси.Пользователь = "";
Прокси.Пароль = "";
ТипСтрока = Прокси.ФабрикаXDTO.Тип("http://www.w3.org/2001/XMLSchema", "string");
PREVIEW_TEXT = Прокси.ФабрикаXDTO.Создать(ТипСтрока, "343434");
Прокси.GO(PREVIEW_TEXT);
|
Ошибка при попытке выполнить метод GO.
Ошибка: Не найден метод GO
В чем может быть проблема?