2014-11-06 2 views
0

Мне нужно загрузить несколько файлов с сервера, который имеет двухэтапную аутентификацию для PowerPoint Addin, которую я пытаюсь разработать.Загрузка файлов с 2-ступенчатого сервера, защищенного проверкой подлинности

Во-первых, я вхожу в рабочую область через браузер ...

В этом браузере можно назвать .txt файл и содержимое отображается в браузере - Отлично!

В моей PowerPoint Addin я тогда следующий код для загрузки файла PP и открыть его ...

Globals.ThisAddIn.Application.Presentations.Open(@"https://workspace2.blahblah.com/group/corenarratives/Shared%20Documents/corenarratives/BlankPresentationTemplate.pptx"); 

Это загружает файл PPTX и открывает его идеальным! Отлично!

Я затем попытаться загрузить файл .txt с этим кодом:

WebClient wc = new WebClient(); 
wc.DownloadFile("https://workspace2.blahblah.com/group/corenarratives/Shared%20Documents/corenarratives/rts.txt", @"C:\trev\trev.txt"); 

И содержимое файла содержит страницу HTML ошибки ...

Когда я сохранить .txt файл как файл .html и открыть его в браузере, он перенаправляет меня на страницу регистрации рабочего пространства ...

Не понимаю, почему файл PowerPoint открывается, а файл .txt не работает?

И, как, если возможно, загрузить .txt-файл?

Помогите пожалуйста?

Благодаря

+0

"содержит ошибочную страницу HTML": что страница ошибки сказать? –

+0

страница, в которой говорится, что я буду перенаправлен ... когда я открою ее в браузере, она перенаправляет меня на страницу входа в рабочую область. –

+0

Итак, вы не вошли в систему (насколько известно серверу). Возможно, он ожидает cookie для входа с запросом. –

ответ

0

Это нормально отправить ответ, я бы охарактеризовал как «в процессе»?

Я знаю, что я парень в твиттере, который действительно знает его вещи.

Не тот близкий друг, но тот, за кем я следовал в течение длительного времени. он написал скрипачу.

Итак, я высунул шею и спросил его.

Это то, что он сказал.

«Наблюдайте за своим трафиком из каждого сценария с помощью Fiddler. Отправляется ли PPT куки-файл, заголовок Auth или User-Agent, который должен отправить ваш код?»

«WebClient не основан на WinINET/URLMon. Загрузка PowerPoint (часто), и это означает, что он получает файлы cookie, строку UA и т. Д.»

«В PowerPoint есть файлы cookie и автоматическое аутентификационное поведение, унаследованное от URLMon/WinINET».

Что, если я правильно понимаю, объясняет, почему PowerPoint можно скачать файл ..

я думаю.

Update:

я в конечном итоге это реализовать:

Is it possible to transfer authentication from Webbrowser to WebRequest

НТН

Смежные вопросы