powered by simpleCommunicator - 2.0.28     © 2024 Programmizd 02
Map
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Подключение к стороннему WCF по HTTPS
14 сообщений из 64, страница 3 из 3
Подключение к стороннему WCF по HTTPS
    #39659685
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123skyANAPetro123,
ждём работающего примера.
от меня милый? Почему?
Ну ты же выйдешь на работу, проверишь и покажешь какие настройки выбрать в IDE, чтобы заработало.

Или ты не выйдешь на работу? Не проверишь и не покажешь нужные настройки?

P.S.: и заметили, я уже милый. Геи такие переменчивые натуры.
...
Рейтинг: 0 / 0
Подключение к стороннему WCF по HTTPS
    #39659686
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAждём
Ты с кем там?
Тут есть полиция нравственности чтобы предупредить преследующего(ИХ) и что то требующего?
Кнопка модератора не работает).
...
Рейтинг: 0 / 0
Подключение к стороннему WCF по HTTPS
    #39659688
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAчтобы заработало.
у ВАС, с кем вы там в цикле ожидания, плохо с памятью.
Я обещал посмотреть что возвращает метод и можно ли на это повлиять.
Глянь выше милый.
И не говори за всех. Только за себя.
...
Рейтинг: 0 / 0
Подключение к стороннему WCF по HTTPS
    #39659694
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123skyANAчтобы заработало.
у ВАС, с кем вы там в цикле ожидания, плохо с памятью.
Я обещал посмотреть что возвращает метод и можно ли на это повлиять.
С памятью у меня всё хорошо.
Ожидается, что ты придёшь на работу, возьмёшь в руки клиент WCF, нудными настройками повлияешь на него, и...

Либо мы получим работающий пример, за который скажем тебе спасибо, особенно ТС.

Либо убедимся в том, "что сгенерировать клиента в студии можно для обсуждаемого сервиса, но вот работать он не будет".
И ты прочитаешь занудное: "Ну тебе же это ещё на первой странице написали, к чему весь этот флуд?".

Лично я за первый вариант (работающий пример), а ты?

Вообщем продолжим через неделю
...
Рейтинг: 0 / 0
Подключение к стороннему WCF по HTTPS
    #39659696
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAнудными настройками
нужными
...
Рейтинг: 0 / 0
Подключение к стороннему WCF по HTTPS
    #39659962
AlexV1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ребята, давайте жить дружно!

Задача не решена.
Кидайте только дельные мысли, проверю что надо по вашей указке или сами попробуйте подключиться к этому сервису.
Сервис точно работает, им пользуются. Примеры есть только на php
...
Рейтинг: 0 / 0
Подключение к стороннему WCF по HTTPS
    #39659963
AlexV1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Class View может понадобится ...
...
Рейтинг: 0 / 0
Подключение к стороннему WCF по HTTPS
    #39659964
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexV1,

Вам уже подкинули мысль: делать вручную, потому как мышкой натыкать не получится.
...
Рейтинг: 0 / 0
Подключение к стороннему WCF по HTTPS
    #39659966
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexV1,

хотя вот Вам другая мысль: попробуйте подправить wsdl. Сохранить, подправить и указать в качестве Address.
...
Рейтинг: 0 / 0
Подключение к стороннему WCF по HTTPS
    #39660014
AlexV1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Вам уже подкинули мысль: делать вручную, потому как мышкой натыкать не получится.

Вручную не делал ранее.
Но попробовать надо.

XML-тело запроса сформировал в postData = "....";
Address = " https://api.forum-auto.ru/soap";
А что указывать в ContentType, Accept, Host?
...
Рейтинг: 0 / 0
Подключение к стороннему WCF по HTTPS
    #39660083
AlexV1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Делаю так:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
string postData =
                "<? xml version =\"1.0\" encoding=\"utf-8\"?>"
                + "<soapenv:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:api=\"API\">"
                + "<soapenv:Header/>"
                + "<soapenv:Body>"
                + "<api:listGoods soapenv:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\">"
                + "<login xsi:type=\"xsd:string\">109185_bondarchuk</login>"
                + "<pass xsi:type=\"xsd:string\">XPzxmgEG9A </pass>"
                + "<art xsi:type=\"xsd:string\">1K0411315R</art>"
                + "<cross xsi:type=\"xsd:integer\">1</cross>"
                + "<br xsi:type=\"xsd:string\">\"\"</br>"
                + "</api:listGoods>"
                + "</soapenv:Body>"
                + "</soapenv:Envelope>";

HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create("https://api.forum-auto.ru/soap");
req.Method = "POST";
req.Timeout = 60000;
byte[] m = Encoding.ASCII.GetBytes(postData);

req.GetRequestStream().Write(m, 0, postData.Length);

string resp = "";
using (var WebResponse = (HttpWebResponse) req.GetResponse())
{
    using (var stream = WebResponse.GetResponseStream())
    {
        using (var reader = new StreamReader(stream, Encoding.GetEncoding(WebResponse.CharacterSet)))
        {
            resp = reader.ReadToEnd();
        }
    }
}


Никаких Exception не возникает, в resp reader.ReadToEnd() присваивает "".

в Watch WebResponse выгдлядит так:

CharacterSet "utf-8" string
ContentEncoding "" string
ContentLength 0 long
ContentType "text/xml; charset=utf-8" string
+ Cookies {System.Net.CookieCollection} System.Net.CookieCollection
+ Headers {Connection: keep-alive
Content-Length: 0
Cache-Control: no-store, no-cache
Content-Type: text/xml; charset=utf-8
Date: Wed, 13 Jun 2018 07:08:08 GMT
Expires: Wed, 13 Jun 2018 10:08:08 +0300
Server: nginx/1.10.1

} System.Net.WebHeaderCollection
IsFromCache false bool
IsMutuallyAuthenticated false bool
+ LastModified {13.06.2018 14:08:16} System.DateTime
Method "POST" string
+ ProtocolVersion {1.1} System.Version
+ ResponseUri { https://api.forum-auto.ru/soap} System.Uri
Server "nginx/1.10.1" string
StatusCode OK System.Net.HttpStatusCode
StatusDescription "OK" string
SupportsHeaders true bool
+ Non-Public members

SoapUI утилита при этом же запросе выдает ответ

Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Body>
      <SOAP-ENV:Fault>
         <faultcode>27</faultcode>
         <faultstring>Товары не найдены.</faultstring>
         <detail>К сожалению, поиск не дал положительных результатов.</detail>
      </SOAP-ENV:Fault>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>
...
Рейтинг: 0 / 0
Подключение к стороннему WCF по HTTPS
    #39660190
refreg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexV1,

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
        {
            var postData = @"
<soapenv:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"" xmlns:soapenv=""http://schemas.xmlsoap.org/soap/envelope/"" xmlns:api=""API"">
   <soapenv:Header/>
   <soapenv:Body>
      <api:listGoods soapenv:encodingStyle=""http://schemas.xmlsoap.org/soap/encoding/"">
         <login xsi:type=""xsd:string"">109185_bondarchuk</login>
         <pass xsi:type=""xsd:string"">XPzxmgEG9A</pass>
         <art xsi:type=""xsd:string"">QF36A00199</art>
         <cross xsi:type=""xsd:integer""></cross>
         <br xsi:type=""xsd:string""></br>
      </api:listGoods>
   </soapenv:Body>
</soapenv:Envelope>";


            using (var httpClient = new HttpClient())
            {
                httpClient.BaseAddress = new Uri("https://api.forum-auto.ru");

                var content = new StringContent(postData);
                content.Headers.ContentType = new MediaTypeHeaderValue("text/xml");
                content.Headers.Add("SOAPAction", "listGoods");

                var postAsync = httpClient.PostAsync("/soap", content);
                var resultContent = postAsync.Result.Content.ReadAsStringAsync().Result;
            }

            //            HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create("https://api.forum-auto.ru/soap");
            //            req.Method = "POST";
            //            req.Timeout = 60000;
            //            req.ContentType = "text/xml;charset=UTF-8";
            //            req.Headers.Add("SOAPAction", "listGoods");
            //
            //            byte[] m = Encoding.ASCII.GetBytes(postData);
            //            req.GetRequestStream().Write(m, 0, postData.Length);
            //
            //
            //            string resp = "";
            //            using (var WebResponse = (HttpWebResponse)req.GetResponse())
            //            {
            //                using (var stream = WebResponse.GetResponseStream())
            //                {
            //                    using (var reader = new StreamReader(stream, Encoding.GetEncoding(WebResponse.CharacterSet)))
            //                    {
            //                        resp = reader.ReadToEnd();
            //                    }
            //                }
            //            }
        }



ЗЫ. Тебя бы у нас уже уволили, и это никак не связано с твоими навыками по программированию
...
Рейтинг: 0 / 0
Подключение к стороннему WCF по HTTPS
    #39660231
AlexV1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вопрос решен.

Спасибо за помощь.
...
Рейтинг: 0 / 0
Подключение к стороннему WCF по HTTPS
    #39662896
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Впечатление, что в шарпе на WCF пишут полтора программиста)).
skyANAPetro123, ....гадания на кофе пропущены...
Дорогой, ты разговариваешь с мембером даже в блокировке))))).
А также в гос.праздники и ЧМ мира по футболу.
К сожалению, не интересен. Даже с учётом Папы модератора.
Это же надо! 30 постов в теме и все про меня и ни одного по делу.
refreg,
посмотрел как обещал тип возврата метода.
Возвращается string.
Причём штатная смена типов возврата (выше скрин) не работает.
Я бы сказал так:
- по логике вещей нужно возвращать не массив, а класс для сериализации на клиента.
Что то типа:
Код: sql
1.
2.
3.
List<Товар>
//или
class ПрайсТовара


Тогда бы всё IMHO работало.
3.
Если программисты сервиса всё таки криворукие, тогда всё равно
выкидывать WCF не надо, т.к. есть API.
- в конфиге пишем:
Код: sql
1.
2.
3.
4.
5.
6.
7.
<extensions>
	<behaviorExtensions>
		<add
			name="LogMessageInspector"
			type="WCF_Job_min.CustomBehaviorExtensionElement, WCF_Job_min" />
	</behaviorExtensions>
</extensions>


пишем такой класс _расширение_:
Код: sql
1.
public class MyOperacionBeh : IOperationBehavior


внедряемсяв контракт:
Код: sql
1.
2.
foreach (var operation in channel.Endpoint.Contract.Operations)
     operation.OperationBehaviors.Add(new MyOperacionBeh());


всё.
Теперь имеем полный контроль над приходом и уходом пакетов и корректируем возврат.
Итого 3 метода решения:
1. выкинуть WCF и руками (твои посты выше)
2. договор с прогерами сервиса о модернизации
3. не выкидывать WCF и корректировать возврат с помощью штатных интерффейсов.
Удачи!
...
Рейтинг: 0 / 0
14 сообщений из 64, страница 3 из 3
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Подключение к стороннему WCF по HTTPS
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]