Коллеги, приветствую.
Собственно вопрос - как разрешить удаленный вызов процедур Web- сервиса? Есть простой WCF Web- сервис, на его основе получен WSDL, из которого сгенерированы прокси- классы. Эти прокси- классы использует простой консольный клиент, например, просто вернуть строку с сервера - вылетает окно:
Судя по ссылке, запрос не проходит авторизацию, хотя в Terrasoft.WebApp\Web.config указано, что:
Как отключить авторизацию для RPC?
Был бы весьма признателен за информацию.
Спасибо.
--
С уважением, Алексей Быков.
Нравится
Переехали решать задачу в рамках технической поддержки:smile:
Вот некоторые подробности.
1. В \Terrasoft.WebApp\ServiceModel добавил UsrService.svc:
[code]
<%@ ServiceHost Language="C#" Debug="true" Service="Terrasoft.WebApp.ServiceModel.UsrService" CodeBehind="UsrService.svc.cs" %>
[/code]
2. В \Terrasoft.WebApp\Web.config добавил:
[code]
...
...
...
...
[/code]
Контракт Web- сервиса в конфигурации (UsrIService.svc):
[code]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.Text;
namespace SimpleCustomService
{
[ServiceContract]
public interface UsrIService
{
[OperationContract]
string SPMClientInfo();
}
}
[/code]
Реализация Web- сервиса в конфигурации (UsrService.svc):
[code]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.Text;
namespace SimpleCustomService
{
public class UsrService : UsrIService
{
public string SPMClientInfo()
{
return "test string";
}
}
}
[/code]
В \Terrasoft.WebApp\ServiceModel\http\services.config добавил:
[code]
...
...
[/code]
Нашел вот статью, попробую сделать как там описано. Аутентификация внешних запросов к веб-сервисам bpm'online
Отличная статья, как я теперь могу вызвать метод Web- сервиса, используя AuthCookie? Должен- ли я менять код Web- сервиса, чтобы аутентифицировать внешние запросы?
Здравствуйте.
Обратите внимание на ресурс: http://stackoverflow.com/questions/16028014/how-can-i-pass-a-username-p…
Здравствуйте, Александр! Спасибо большое за ответ, попробую сделать так.
Возвращаясь к началу, хочу отметить одну интересную деталь - если в Visual Studio попытаться добавить ссылку на WSDL (Add Web Reference), то получим такое вот окно:
URL тот же самый, что и в консоли:
[code]
http://localhost:8080/NuiLogin.aspx?ReturnUrl=%2f0%2fServiceModel%2fSim…
[/code]