Вопросы с тегами [httpresponse]

0

голосов
1

ответ
18

Просмотры

Как добавить «код» в ответ Свода IHttpActionResult возврата BadRequest (Message)

Я возвращаю BadRequest ( «Ошибка Invalid продукта Id»), который возвращает мне код ответа 400 и тело ответа { «ошибка»: { «код»: «», «сообщение»: «Ошибка Недопустимый идентификатор продукта»}} Как я могу отправить код ответа 400 в теле ответа так что я получаю ответ тела как: { «ошибка»: { «код»: 400, «сообщение»: «ошибка Недопустимый идентификатор продукта»}}
Sushrut Bhosale
1

голосов
0

ответ
42

Просмотры

Установить заголовок ответа для каждой конечной точки под конкретным ресурсом

Я хочу задать следующий заголовок ответа для всех конечных точек под конкретным ресурсом: кэш-контроль: нет кэша Для меня, например, ресурса под название «примером», и в примере есть несколько конечных точек, такие как «test1» и «test2 ». Таким образом, URL, будет выглядеть следующим образом: локальный: 4000 / пример / test1 и локальный: 4000 / пример / test2 Вместо установки заголовка ответа кэш-контроля индивидуально на test1 и test2, есть способ, чтобы установить его на примере уровня ( уровень ресурсов)? В настоящее время под test1 и test2 Я использую следующий код, чтобы установить заголовок ответа: CacheControl lCacheControl = новый CacheControl (); lCacheControl.setNoCache (истина); вернуть Response.status (Response.Status.OK) .entity (lOutput) .cacheControl (lCacheControl) .build (); Код написан на Java.
Michael
1

голосов
0

ответ
100

Просмотры

Настройка пользовательских заголовков в ответ на Rails Application является хорошей практикой или нет

Я хочу, чтобы отправить данные по конкретной стране в некотором запросе API со стороны клиента. Эти данные будут оставаться неизменными на протяжении всего сеанса работы пользователя. Это хорошая практика, чтобы установить пользовательские заголовки в ответ следующим образом: response.header [ «на заказ Header-Name»] = «Пользовательский-Header-Value»
ronak
1

голосов
0

ответ
65

Просмотры

Как подготовить тело ответа HTTP для разворачивая ВГД на LinkedIn?

«Развернув это технический термин для того, что происходит, когда вы поделитесь ссылкой на Twitter, Facebook, LinkedIn или провисание.» (Из книги: Проектирование Боты: Создание разговорного Опыта Амира Шват) Что спецификации делает тело ответа HTTP должно соответствовать для того, чтобы дать возможность разворачивая ссылку на LinkedIn?
MobileDream
1

голосов
0

ответ
14

Просмотры

Закрытие потока после отправки в Response.ok ()

Я пытаюсь удовлетворить ошибку подкрепиться. У меня есть метод, возвращающий Читателя из Clob.getCharacterStream () попробовать (конечная ResultSet Resultset = statement.executeQuery ()) {если (resultSet.next ()) {окончательное Clob зп = resultSet.getClob ( "CLOB"); Читатель читатель = sn.getCharacterStream (); вернуть читателя; } Еще {певд FunctionalException (EUFunctionalErrorMessage.REPORT_NOT_FOUND); }} ... в конечном счете, он возвращает его в метод, который вызывает возврата Response.ok (читатель, MediaType.APPLICATION_XML_TYPE) .header (CONTENT_DISPOSITION, "привязанность; имя файла =" + "packData_" + ProductCode + "_" + batchId + " _ "+ Timestamp +" .xml ") .build (); Мне нужно закрыть читатель (в соответствии с Fortify). Я не могу закрыть его в первом способе, в котором создается читатель. После того, как я посылаю его к Repsonse.ok, я не знаю, как «получить его обратно», чтобы закрыть. В этом случае я не могу рассчитывать на клиенте, чтобы закрыть.
Shane B
1

голосов
1

ответ
280

Просмотры

Oracle Service Bus: бизнес-сервис предоставляет трансфер-кодирование как «фрагментированный», даже если «Использовать фрагментированную потоковый режим» отключен

Бизнес-сервис предоставляет трансфер-кодирование как «фрагментированный», хотя «использование фрагментированного потоковым режима» отключен в конфигурации HTTP транспорта. В рамках одного из наших требований, мы нуждаемся в Content-Length в заголовке ответа HTTP, поскольку ответ службы становится фрагментированным по умолчания, содержание длина игнорируются в заголовке. Это наблюдается в версиях ОСБ 12с (тестируемых в 12.1.3 и 12.2.1.2). Просьба помочь с этим?
sanjay kumar
1

голосов
0

ответ
210

Просмотры

Тип «недействительным | Наблюдаемые »не может быть назначен для типа„ObservableInput “

Я получаю следующее сообщение об ошибке из приведенного ниже кода: ошибка TS2345: Аргумент типа «(ERR: любой) => недействительным | Наблюдаемый»не может быть назначен для параметра типа '(ERR: любой, пойманный: Observable) => ObservableInput. Тип «недействительным | Наблюдаемый 'не присваиваемый типа ObservableInput. Тип 'пустота' не может быть назначена для типа 'ObservableInput' Это мой код: перехватывать (Req: HttpRequest, следующий: HttpHandler): Наблюдаемое {вернуться next.handle (this.addToken (REQ, this.authService.getAuthToken ())) .catch (ERR => {если (ERR InstanceOf HttpErrorResponse) {переключатель ((ERR) .status) {случай 403: возвращение this.handle403Error (REQ, следующий); случай, 401: возвращение this.authService.logout (() => {Вернуть this.router.navigateByUrl ( '/ авт / Войти'); }); Случай 400: возвращение Observable.throw (ERR); по умолчанию: возвращение Observable.throw (ERR); }} Еще {вернуть Observable.throw (ERR); }}); }
1

голосов
1

ответ
249

Просмотры

Ubuntu + Nodejs + локон: (52) Пустой ответ от сервера

У меня есть nodejs процесс прослушивания порта на моем сервере: app.get ( '/ статистика', функция (Req, Рез) {log_get_connection (REQ); getStatistic (), а затем (статистика => {res.json (статистика);. });}); При попытке доступа к нему через завиток быть на той же самой машине: завиток «http://127.0.0.1:/statistic» # или свернуться «HTTP: //: / статистики» я получаю: * пустой ответ от сервера * Подключение # 0 для размещения EXT_IP оставили нетронутыми завиток: (52) Пустой ответ от сервера Но когда я к нему доступ через завиток с другого сервера я вижу успешный ответ HTTP. Я не отменяю Рез. Кроме того, если я ставлю console.log (статистика) до res.json (статистики), я вижу, что статистика является правильной. Что еще более интересно - эта установка работала прекрасно в течение некоторого времени ... UPD: UFW отключен.
zzomrot
1

голосов
1

ответ
124

Просмотры

How to add Content-length To http request in php

I want to use octoparse API. AND I have error when I want to clear data in octoparse API. AND this my code ini_set('max_execution_time', 300); $url = 'https://dataapi.octoparse.com/api/task/RemoveDataByTaskId?taskId='; $options = array( 'http' => array( 'header' => "Authorization: bearer ", 'method' => 'POST' ) ); $context = stream_context_create($options); $result = file_get_contents($url, false, $context); if ($result === FALSE) { echo 'error'; } var_dump($result); My result Warning: file_get_contents(https://dataapi.octoparse.com/api/task/RemoveDataByTaskId?taskId=): failed to open stream: HTTP request failed! HTTP/1.1 411 Length Required And I try to add Content-length But It have an error My new code: ini_set('max_execution_time', 300); $url = 'https://dataapi.octoparse.com/api/task/RemoveDataByTaskId?taskId='; $a=strlen($url); $options = array( 'http' => array( 'header' => "Authorization: bearer ", 'method' => 'POST', 'header' => sprintf('Content-Length: %d', $a) ) ); $context = stream_context_create($options); $result = file_get_contents($url, false, $context); if ($result === FALSE) { echo 'error'; } var_dump($result); My result Warning: file_get_contents(https://dataapi.octoparse.com/api/task/RemoveDataByTaskId?taskId=): failed to open stream: HTTP request failed! Can anyone know how to solve my problem. Thank.
Burin
1

голосов
0

ответ
86

Просмотры

как написать условную строку запроса с использованием unirest в Java

Im пытается получить записи с идентификаторами больше 1000 скажем. и я использую unirest в Java. Я пытался использовать QueryString, но это не сработало. HttpResponse responsePatientTest = Unirest.get (Util.URL + "/ sometable") .queryString ( "Id", "> 1000") .basicAuth ( "пользователь", "удар") .asJson (); может быть, это потому, что я не знаком с unirest. есть способ сделать это с QueryString? если нет, то могли бы вы предложить другой путь?
Zaha
1

голосов
1

ответ
40

Просмотры

Как удалить это чванство предупреждение, о ГОЛОВАХ и ВАРИАНТАХ?

Я чванство на экспресс JS и когда я делаю запрос я получаю эти предупреждения. ПРЕДУПРЕЖДЕНИЕ! Не удалось найти работу, которая соответствует Swagger ГОЛОВА ... - это покажет, если я буду стараться использовать завиток. ПРЕДУПРЕЖДЕНИЕ! Не удалось найти работу, которая соответствует Swagger OPTIONS ... - в то время это один при обращении с веб-страницы. Я уже добавить шлем и это в коде. app.use ((_, Рез: Ответ, следующий: NextFunction) => {res.header ( 'Access-Control-Allow-Origin', '*'); res.header ( 'Access-Control-Allow-Headers' 'Происхождение, X-Requested-With, Content-Type, Accept'); res.header ( 'Access-Control-Allow-Headers', 'Content-Type, api_key, авторизации',); следующий ();}) ; Что я пропустил?
zer09
1

голосов
1

ответ
26

Просмотры

HttpResponse.TransmitFile метод (НО для нескольких файлов)?

Я ищу способ или способ служить несколько файлов HTML посетителю сайта, в момент, когда он входит на сайт. Как: Response.TransmitFile ( "index1.html"); Response.TransmitFile ( "index2.html"); Response.TransmitFile ( "index3.html"); Response.TransmitFile ( "index4.html"); Response.TransmitFile ( "index5.html"); Я прошел через AspNetCore документации, но ничего толкового не нашел. Любая помощь приветствуется.
PlzHelpMeSon
1

голосов
2

ответ
60

Просмотры

Невозможно получить никакого ответа от API (Volley)

Я не могу разобрать запрос от URL http://shikshan.indiansmarthub.co.in/api/menu_t.php?token=SHIK9306488&catt=3 Мой другой Api следует за ту же структуру, но я не могу получить никакого ответа от этого апите при интеграции его в моем приложении. Android Volley Код частной аннулируются doLogin () {Строка URL = "http://shikshan.indiansmarthub.co.in/api/menu_t.php?token=SHIK9306488&catt=3"; StringRequest strReq = новый StringRequest (Request.Method.POST, URL, новый Response.Listener () {@Override общественный недействительный onResponse (String ответ) {Log.e ( "tag_r", "tag_r"); Log.e ( "tag_res », ответ);}}, новый ответ. ErrorListener () {@Override общественного недействительными onErrorResponse (VolleyError volleyError) {Toast.makeText .show () (Login.this, volleyError.getMessage () ToString (), Toast.LENGTH_LONG.); }}); // Создание запроса очереди RequestQueue RequestQueue = Volley.newRequestQueue (это); // Добавление запроса в очереди requestQueue.add (strReq); } Api кодекс Api успешно попав на пост человека, и браузер, но залп на андроид не может ударить этот API. Ответ на сообщение человека { "Статус": "1", "данные": [{ "getMenu": [{ "MenuName": "Зрители", "Тип": "M"
Pooja Singal
1

голосов
2

ответ
1.1k

Просмотры

Как определить, что файл был успешно получен с помощью веб-клиента?

Мой вопрос похож на этот пост, но я должен сделать то же самое с помощью IIS, ASP.NET и C #. Ни один из методов в классе HttpResponse не обеспечивают обратную связь, если данные были переданы или нет, TransmitFile () просто делает свою работу (или нет) и не предусматривает каких-либо средств зная результат. Я думал об использовании имущества .Filter, но затем снова, фильтр на основе HttpResponseStream, который делает также не обеспечивает какой-либо обратной связи. Есть идеи?
Uniwares_AS
1

голосов
1

ответ
420

Просмотры

SSL в HttpContext.Current.Response

Может быть глупый вопрос, но мне нужно подтверждение независимо. В ASP.NET, если файл был загружен на страницу, которая была защищена SSL, через серверный постбэка, который записывает HttpContext.Current.Response.OutputStream, является передача, что файл также защищен SSL? Спасибо за любую помощь.
shyneman
1

голосов
1

ответ
1.1k

Просмотры

Прерывистый HttpClient GET вопрос о андроиде

У меня есть андроид приложение я работаю на который загружает изображение с сервера, считывает его в растровое изображение и отображает его на ImageView Это прекрасно работает большую часть времени, но каждый так часто, он проходит через процесс (Существует ProgressDialog говоря «образ ... Выборка») и один раз не получает отображается его сделали ничего. Там не было ничего в LogCat, что даже кажется, отдаленно связаны с этим. Вот код: Растровое изображение = NULL; HttpClient клиент = новый DefaultHttpClient (); HttpGet прибудет = новый HttpGet (WebService + "CMD = прибудет?"); попробуйте {HttpResponse соответственно = client.execute (получить); Log.i ( "PhotoRouletteDebug", "Ответств размер буфера:" +. (INT) resp.getEntity () getContentLength ()); InputStream является = resp.getEntity () getContent (). BufferedInputStream BUF = новый BufferedInputStream (т.е. (INT) resp.getEntity () getContentLength ().); Изображение = BitmapFactory.decodeStream (BUF); // очистить buf.close (); закрыто(); Даже если не получать ничего отображаться, длина содержимого Респ всегда сообщает правильный размер, но до сих пор ничего не заканчивает тем, что отображается. Этот код вызывается из AsyncTask, но только одна задача никогда не вызывается в то время. Это сводит меня с ума, я понятия не имею, почему его продолжает делать это. Edit: Вот код, который устанавливает ImageView // AsyncTask для получения нового изображения из защищенного класса очереди GetImageTask расширяет AsyncTask {защищены недействительный onPreExecute () {// позволяет показать диалог прогресса, так что пользователь знает, что происходит что-то progressDialog = ProgressDialog.show (PhotoRoulette.this, "", "Получение изображения ...", правда); } Защищены недействительным onPostExecute (растровое изображение) {// мы получили новую фотографию так что позволяет отображать его там, где он должен отображаться попробовать {PhotoView = (ImageView) findViewById (R.id.photoView); photoView.setImageBitmap (изображение); } Поймать (Exception е) {Log.e ( "Debug", "Что-то совсем отсталый произошло", е); } // скрыть диалог прогресса - мы все сделали progressDialog.dismiss (); } Защищенного Bitmap doInBackground (String ... URLs) {// Получить новый Bitmap очередь Изображения растрового изображения = imageHandler.getQueueImage (); вернуть изображение; }} } Защищены недействительным onPostExecute (растровое изображение) {// мы получили новую фотографию так что позволяет отображать его там, где он должен отображаться попробовать {PhotoView = (ImageView) findViewById (R.id.photoView); photoView.setImageBitmap (изображение); } Поймать (Exception е) {Log.e ( "Debug", "Что-то совсем отсталый произошло", е); } // скрыть диалог прогресса - мы все сделали progressDialog.dismiss (); } Защищенного Bitmap doInBackground (String ... URLs) {// Получить новый Bitmap очередь Изображения растрового изображения = imageHandler.getQueueImage (); вернуть изображение; }} } Защищены недействительным onPostExecute (растровое изображение) {// мы получили новую фотографию так что позволяет отображать его там, где он должен отображаться попробовать {PhotoView = (ImageView) findViewById (R.id.photoView); photoView.setImageBitmap (изображение); } Поймать (Exception е) {Log.e ( "Debug", "Что-то совсем отсталый произошло", е); } // скрыть диалог прогресса - мы все сделали progressDialog.dismiss (); } Защищенного Bitmap doInBackground (String ... URLs) {// Получить новый Bitmap очередь Изображения растрового изображения = imageHandler.getQueueImage (); вернуть изображение; }} photoView.setImageBitmap (изображение); } Поймать (Exception е) {Log.e ( "Debug", "Что-то совсем отсталый произошло", е); } // скрыть диалог прогресса - мы все сделали progressDialog.dismiss (); } Защищенного Bitmap doInBackground (String ... URLs) {// Получить новый Bitmap очередь Изображения растрового изображения = imageHandler.getQueueImage (); вернуть изображение; }} photoView.setImageBitmap (изображение); } Поймать (Exception е) {Log.e ( "Debug", "Что-то совсем отсталый произошло", е); } // скрыть диалог прогресса - мы все сделали progressDialog.dismiss (); } Защищенного Bitmap doInBackground (String ... URLs) {// Получить новый Bitmap очередь Изображения растрового изображения = imageHandler.getQueueImage (); вернуть изображение; }} URLs) {// Получить новый Bitmap очереди Изображение растрового изображения = imageHandler.getQueueImage (); вернуть изображение; }} URLs) {// Получить новый Bitmap очереди Изображение растрового изображения = imageHandler.getQueueImage (); вернуть изображение; }}
keslerm
1

голосов
1

ответ
4.4k

Просмотры

Что является лучшей практики для обновления печенья, который был установлен на предыдущий запрос в ASP.NET?

Вот сценарий. Печенье с ключом «MyCookie» был установлен на предыдущий запрос. Я могу получить к нему доступ через HttpContext.Request.Cookies.Get ( «MyCookie»). Я хочу, чтобы выполнить обновление, такие как добавление другого значения в коллекцию Cookie Values, но я не 100% уверен, что я делаю это правильно. Могу ли я сделать это правильно в следующем примере? государственной статической силы UpdateCookie (HttpContext контекст, строка cookieName, Action updateCookie) {вар печенье = context.Request.Cookies.Get (cookieName); updateCookie (печенья); context.Response.Cookies.Set (печенья); }
smartcaveman
1

голосов
2

ответ
117

Просмотры

Обращение с плохим XML из HttpRequest

У меня есть проблема с XML-парсер - я получаю XML с помощью: Струнный executeHttp общественности () {попробуйте {post.setEntity (новый UrlEncodedFormEntity (НВП)); соответственно = client.execute (пост); HttpEntity лор = resp.getEntity (); вернуть EntityUtils.toString (Ent, "UTF-8"); } Задвижка (ParseException е) {e.printStackTrace (); } Поймать (IOException е) {e.printStackTrace (); } Возвращать нуль; }, А затем дать его в анализатор: Xml.parse (this.executeHttp (), это); который работает просто отлично, он разбирает, что мне нужно, и Гоша, жизнь прекрасна ... однако. Я только что узнал, что я получаю некоторые серьезные исключения на реальных устройствах, где подключение к Интернету не так велико, благодаря тому, что мой парсер не обрабатывает такие ситуации, как: «Я не получил надлежащего XML.» «Это XML Ждут»
Michal
1

голосов
1

ответ
792

Просмотры

передавая печенье в запросе HTTP от классической страницы осины

У меня есть интересный сценарий, который мне нужна помощь. У меня есть классическая страница жереха. Функция этой страницы, чтобы выполнить запрос HTTP на внешний URL и обработать ответ от него. Например page.asp делает запрос HTTP на page2.aspx Обе страницы находятся в одном домене. Что мне нужно сделать, это передать все куки, связанные в браузерах page.asp запроса в запросе HTTP для page2.aspx. Возможно ли это, и если да, как я мог бы достичь через класс осины кода?
amateur
1

голосов
1

ответ
410

Просмотры

Использование HttpResponseMessage, как загружать данные кэша, когда пользователь не имеет доступ в Интернет?

Я программирования программного обеспечения с использованием .NET Framework 4.5 в METRO ЗАЯВКИ. Я использую классы HttpClient и HttpResponseMessage, чтобы получить корм из в RSS. частный асинхронный Task CreateRecipesAndRecipeGroups (строка URL) {HttpClient клиент = новый HttpClient (); HttpResponseMessage ответ = NULL; попробуйте {ответ = ждут client.GetAsync (URL); } Поймать (Exception ех) {// здесь нужно загрузить последние каналы загружены}} Как вы можете видеть в своем коде, например, если у меня нет интернета, программа должна загрузить предыдущую или последние каналы. Есть ли у вас представление о том, как можно исправить эту ситуацию?
Darf Zon
1

голосов
3

ответ
3.4k

Просмотры

Symfony2 почему вперед объекты запроса гнездо?

Когда я выполняю вперед () в контроллере, я потеряю свой маршрут и route_parameters. Когда у меня есть ParentAction, что делает вперед к ChildAction. В Childaction я вернуть $ this-> Render ( 'myTemplate.html.twig', массив ()); то запрос атрибутов получить вложенные! Таким образом, когда шаблон визуализируется, вместо $ запроса [ 'атрибуты'] [ '_ route_parameters'] я получаю $ запрос [ 'атрибуты'] [ 'запрос'] [ 'атрибуты'] [ '_ route_parameters']. Хотя в ChildAction, когда я на $ this-> GetRequest (); hierarchie нормально. Является ли это ошибка, или я делаю что-то не так?
Nealv
1

голосов
1

ответ
398

Просмотры

Фильтр сервлета: как поймать ошибку HTTP

Есть ли способ, чтобы поймать ошибку HTTP с сервлет фильтр? Хранятся ошибки HTTP в фильтре SevletResponse? Моя цель состоит в том, чтобы поймать некоторые ошибки аутентификации (401) для перенаправления пользователя на резервный механизм аутентификации.
Jonathan
1

голосов
1

ответ
1.7k

Просмотры

Angular $httpProvider transformResponse data contains local HTML DOM elements?

Когда я создаю экземпляр следующий код в качестве AngularJS приложения, я получаю странные данные в функции transformResponse (внизу кода). Я не вызов функции $ ресурса из любого контроллера, просто загрузки сценария в браузере. Переменных данных (см код) содержит HTML тока частичного, при загрузке приложения. Это кажется странным. Действительно ли это так, как это должно быть? вар buddyServices = угловая .module ( 'buddyServices', [ 'нг', 'ngResource']) .factory ( 'друзей', функция ($ ресурса) {console.log ( 'ресурс'); возвращение $ ресурса ( "HTTP: //webservice.buddyplatform.com/v1/:service», {обслуживание: '', BuddyApplicationName: 'ххх', BuddyApplicationPassword: 'ууу'});}) .config (функция ($ httpProvider) {удалить $ httpProvider.defaults , headers.common [ 'X-Requested-With']; $ HttpProvider.defaults.transformResponse = функция (данные) {console.log (данные); вернуться 'TEST:' + данные; }; }); === РЕДАКТИРОВАТЬ === Это просто пугали меня: $ httpProvider обрабатывает все запросы HTTP, поэтому нагрузка страница один из них. Я предполагаю, что немного сейчас, но это кажется вероятным. Таким образом, становится вопрос: Есть ли «легкий» способ ограничить данные в коде выше только те запросы, выполняемые моей службы?
1

голосов
1

ответ
680

Просмотры

Ajax Обработка ошибок C #

У меня есть страницы ASPX я использую, чтобы инкапсулировать несколько функций. Эти функции вызываются в загрузке страницы, и выбираются переменной строка добавляется в запрос POST через JQuery. Мой вопрос, как я могу вернуть код ошибки, если, скажем, запрос POST по какой-то причине не содержит требуемого идентификационного номера, и т.д. Кроме того, я хотел бы знать, если я делаю это правильно (я имеет форму, которая нужна возможность добавлять и удалять идентификаторы из списка, и я делаю это, манипулируя сессию с этой страницы, я звоню из JQuery). То, что я до сих пор: Вызывающий страница: функция AddItem (код) {$ ( "# SubtypeTextbox") нагрузка ( "../../src/ajax/Subtype.aspx", {Действие:. "Добавить", SID : код}); } И aspx.cs вызываемой страницы: с использованием системы; используя System.Collections.Generic; используя System.Linq; используя System.Web; используя System.Web.UI; используя System.Web.UI.WebControls; общественный частичный класс Scripts_ajax_Subtype: System.Web.UI.Page {защищен недействительным Page_Load (объект отправителя, EventArgs е) {если (Request.Form [ "Action"] == NULL) {Response.Clear (); Response.StatusCode = 409; Response.TrySkipIisCustomErrors = TRUE; Response.Write ( "Действие не требуется."); } Иначе, если (Request.Form [ "SID"] == NULL) {Response.Clear (); Response.StatusCode = 409; Response.TrySkipIisCustomErrors = TRUE; Response.Write ( "Подтип идентификатор требуется."); } Еще {// Выполнить запрос}}}
Jack
1

голосов
1

ответ
212

Просмотры

nodejs не responsing на запросы удаленного сервера

Я только что установили Node.js 0.8.2 на удаленном сервере, общий (я не могу получить более новую версию). До сих пор все, что я был в состоянии лог в консоль после запуска узла file.js. Тем не менее, я хочу, чтобы иметь возможность получить работу сервера (очевидно), но он не работает. Это код, который я попытался запустить: // запустить с node.js console.log ( «привет рабочего штуковина»); вар HTTP = требуется ( 'HTTP'); вар сервер = http.createServer (функция (REQ, разреш) {console.log ( 'просьба'); res.writeHead (200, { 'Content-Type': 'текст / обычный'}); res.end ( 'Привет Мир!'); }); server.listen (1234, '127.0.0.1'); Когда я запускаю его в замазки он говорит привет рабочим штуковина, но когда я иду не mydomain.com:1234 ничего не происходит в браузере и просил не вошли в консоль. Я также попытался заменить «127.0.0.1 с MYDOMAIN. ком, а также оставить этот аргумент совсем. Что мне делать, чтобы это заработало?
markasoftware
1

голосов
1

ответ
3.3k

Просмотры

Context.Response.Headers' бросил исключение типа «System.PlatformNotSupportedException

Я пытаюсь создать PDF-файл с помощью потока памяти. Когда очищают заголовки, он бросил сервер может не четкие заголовки после HTTP заголовков будет отправлен. Вот мой фрагмент кода. Context.Response.Clear (); Context.Response.ClearHeaders (); Context.Response.ClearContent (); System.IO.MemoryStream й = новый System.IO.MemoryStream (); й = (MemoryStream) levyStream; байт [] Ь = st.ToArray (); Context.Response.AppendHeader ( "Content-Disposition", "рядный, имя файла =" + MyFileName); Context.Response.AppendHeader ( "Content-Length", b.Length.ToString ()); Context.Response.BufferOutput = TRUE; Context.Response.ContentType = "применение / PDF"; Context.Response.Charset = ""; Context.Response.OutputStream.Write (б, 0, (INT) st.Length); Context.Response.Flush (); st.Close (); Я приложил ошибку в объекте ответа наряду с этим. С уважением, Аруна
Aruna
1

голосов
1

ответ
296

Просмотры

Ruby: Как Синатра интерпретировать значения возвращаемые маршрутных блоков?

Sinatra позволяет возвращаемые значения маршрутных блоков принимать множество различных форм. Как Синатр знает, как извлечь статус, заголовки и тело от каждого типа возвращаемого значения? В частности, я ищу исходный код (логику), что делает это, потому что я хотел бы сделать что-то подобное. Я искал источники Sinatra & Rack но безрезультатно.
ma11hew28
1

голосов
1

ответ
3.7k

Просмотры

Более эффективный способ вернуть ошибки в .NET Web Api 2 объекта iHttpActionResult?

Я хочу, чтобы вернуть код ошибки HTTP вместе с объектом JSON в моей службе. Но я не могу найти простой способ сделать это. Сейчас это так, как я это делаю: если {вернуть ResponseMessage (Request.CreateResponse (HttpStatusCode.BadRequest, новый BadRequestError (ModelState))); (ModelState.IsValid!) } В основном я создаю HTTPResponse, с объектом, я хочу вернуться, а потом «преобразовать» в экземпляр IHttpActionResult. это правильно? или я должен делать это еще один способ?
Laggel
1

голосов
1

ответ
383

Просмотры

Как я могу сделать действие фильтра вызвать отфильтрованное действие для возврата HttpNotFoundResult?

У меня есть фильтр пользовательских действий для очень явного контента длины ограничивающей. Он делает свою работу, как это: общественное переопределения недействительным OnActionExecuting (ActionExecutingContext filterContext) {если (filterContext.HttpContext.Request.ContentLength> = MaxLength) {певд HttpException ( "MaxLengthFilter: Запрос имеет Content-Length>" + MaxLength); } Base.OnActionExecuting (filterContext); } Я предпочел бы, если любое действие вызывается для длины содержания, превышающей максимальной возвратило более содержательный результат, такие как HTTP 404.13. Если бы я фильтрация непосредственно в действии, я мог бы использовать «вернуть новый HttpNotFoundResult ()», но метод OnActionExecuting фильтра является типом ничтожным. Это осложняется еще и тем, что некоторые действия, которые нуждаются в фильтрации ActionResult в то время как некоторые из них JsonResult,
ProfK
1

голосов
2

ответ
531

Просмотры

Cannot download attachment in response from server

Я использовал метод поста в Alamofire, чтобы загрузить файл успешно, и я получаю ответ от сервера, я могу видеть привязанность скрывается в ответ. Когда я пытаюсь сохранить вложение в моем компьютере, он не работает. Вот код: пусть URLRequest = urlRequestWithComponents (URL, параметры: параметры, ImageData: FILEDATA) Alamofire.upload (urlRequest.0, urlRequest.1) .progress {(bytesWritten, totalBytesWritten, totalBytesExpectedToWrite) в Println ( "\ (totalBytesWritten ) / \ (totalBytesExpectedToWrite) ")} {.response (запрос, ответ, данные, ошибки) в Println (" REQUEST (запрос \) ") (" Println рЕАКЦИЯ \ (ответ) ") Println (" JSON \ (данные) «) Println (» ERROR \ (ошибка) «) Вот файл в приложении я получил от сервера:» Content-Disposition "=" вложение; имя файла = 20150113171557120001.mid ", и данные точно показывает правильный .mid файл в формате JSON Дополнительно () ERROR ноль Вот код, я использую, чтобы сохранить вложение в моем компьютере: пусть тропинки = NSSearchPathForDirectoriesInDomains (.DocumentDirectory, .UserDomainMask, правда) [0], как NSArray пусть documentsDirectory = paths.objectAtIndex (0), как NSString пусть путь = documentsDirectory.stringByAppendingPathComponent ( "file.mid") (данные в виде NSData) .writeToFile (путь, атомарно: истинно) После того, как добавить код сохранения крепление, нет никаких ошибок или предупреждений, в то время как на выходе для потока, показывая, как это, за исключением: thread1 exc_breakpoint (код = exc_i386_BPT, субкодовый = 0х0) Могу ли я использовать неправильный метод, чтобы сохранить вложение?
ShadeBai
1

голосов
1

ответ
790

Просмотры

Abot Гусеничный Omit CrawledPage HttpWebRequest / ответ

Я использую Аботы таким образом, что у меня есть приложение WPF, который отображает элемент управление браузером (CefSharp). Пользователь входит в систему и какая-либо возможной пользовательской аутентификации сайт, используя будет работать при сканировании точно так же, как если бы пользователь действительно просматривают сайт. Таким образом, когда я ползти, я хочу использовать этот элемент управления браузера, чтобы сделать запрос и просто вернуть данные страницы. Поэтому я реализовал свой собственный PageRequester, полный список ниже. Проблема заключается в том, что с CefSharp, как и с другими элементами управления браузером, это не возможно, чтобы получить HttpWebRequest / ответ, связанный с CrawlPage. Без установки этих двух свойств, Abot не идет кроль дальше. Есть ли что-то можно сделать, чтобы обойти эту проблему? Листинг: использование Abot.Core; используя Abot.Poco; используя CefSharp.Wpf; с использованием системы; используя system.net; с помощью системы. Текст; используя System.Threading; CefPageRequester общественный класс: IPageRequester {частное MainWindowDataContext DataContext; частный ChromiumWebBrowser ChromiumWebBrowser; частный CrawlConfiguration CrawlConfig; частный летучий BOOL _navigationCompleted; частная строка _pageSource; общественного CefPageRequester (MainWindowDataContext DataContext, ChromiumWebBrowser chromiumWebBrowser, CrawlConfiguration crawlConfig) {this.DataContext = DataContext; this.ChromiumWebBrowser = chromiumWebBrowser; this.CrawlConfig = crawlConfig; this.ChromiumWebBrowser.FrameLoadEnd + = ChromiumWebBrowser_FrameLoadEnd; } Общественного CrawledPage MakeRequest (Uri Uri) {вернуться this.MakeRequest (Ури ф => новый CrawlDecision () {Разрешить = истина}); } Общественного CrawledPage MakeRequest (Uri Uri, Func shouldDownloadContent) {если (== URI нуль) певд ArgumentNullException ( "URI"); CrawledPage crawledPage = новый CrawledPage (URI); попробуйте {// элемент управление браузером связанно с адресом контекста данных, // если мы устанавливаем адрес непосредственно он разрывает по какой-то причине, хотя это два способа связывания. this.DataContext.Address = uri.AbsolutePath; crawledPage.RequestStarted = DateTime.Now; crawledPage.DownloadContentStarted = crawledPage.RequestStarted; в то время как Thread.CurrentThread.Join (10) (_navigationCompleted!); } Задвижка (WebException е) {crawledPage.WebException = е; } Поймать {// незадача, мы должны войти в этом. } Наконец {// TODO необходимо добавить эти свойства !! //crawledPage.HttpWebRequest = запрос; //crawledPage.HttpWebResponse = ответ; crawledPage.RequestCompleted = DateTime.Now; crawledPage.DownloadContentCompleted = crawledPage.RequestCompleted; если (String.IsNullOrWhiteSpace (_pageSource)!) crawledPage.Content = this.GetContent ( "UTF-8", _pageSource); _navigationCompleted = ложь; _pageSource = NULL; } Вернуть crawledPage; } Частная пустота ChromiumWebBrowser_FrameLoadEnd (объект отправителя, CefSharp.FrameLoadEndEventArgs е) {если (e.IsMainFrame!) Возвращение; this.ChromiumWebBrowser.Dispatcher.BeginInvoke ((Action) (() => . {_PageSource = this.ChromiumWebBrowser.GetSourceAsync () Результат; _navigationCompleted = TRUE; })); } Частная PageContent GetContent (строка набора символов, строка HTML) {PageContent PageContent = новый PageContent (); pageContent.Charset = кодировка; pageContent.Encoding = this.GetEncoding (набор символов); pageContent.Text = HTML; pageContent.Bytes = pageContent.Encoding.GetBytes (HTML); вернуться PageContent; } Частное кодирование GetEncoding (строка набора символов) {Кодирование е = Encoding.UTF8; если (! Charset = NULL) {попробуйте {е = Encoding.GetEncoding (набор символов); } Поймать {}} возвращение е; }} Также вопрос может быть сформулирован следующим образом: как избежать того, чтобы создать HttpWebResponse из потока? Что кажется невозможным, учитывая MSDN говорит: Вы никогда не должны непосредственно создать экземпляр класса HttpWebResponse. Вместо этого используйте экземпляр, возвращаемый вызовом HttpWebRequest.GetResponse. Я бы на самом деле отправлять запрос, чтобы получить ответ, который именно то, что я хочу, чтобы избежать, имея контроль над веб-браузер.
h.alex
1

голосов
1

ответ
5.7k

Просмотры

Как получить имя файла из заголовка ответа от HttpURLConnection?

У меня есть программа Client Server Клиент установить соединение с сервером с его URL и сервер читает файл и записывает в OutputStream и клиент получит этот файл и сохранить его в каталоге. Проблема в том, я не получаю имя файла Я посылаю в ответ от сервера. Вот мой код клиент-сервер. Клиент, частная пустота receiveFile () бросает IOException {Строка url11 = "HTTP: // локальный: 8080 / TestServer / TestServer"; // создает соединение HTTP URL URL = новый URL (UPLOAD_URL); HttpURLConnection httpConn = (HttpURLConnection) url.openConnection (); httpConn.setUseCaches (ложь); httpConn.setDoOutput (истина); httpConn.setRequestMethod ( "ПОСТ"); INT responseCode = httpConn.getResponseCode (); Строка ФФ = httpConn.getHeaderField ( "имя_файла"); System.out. Println ( "FHeader:" + ТФ); Файл SAVEFILE = новый файл (SAVE_DIR + ТФ); StringBuilder строитель = новый StringBuilder (); builder.append (httpConn.getResponseCode ()) .append ( " ") .append (httpConn.getResponseMessage ()) .append (" \ п"); если (responseCode == HttpURLConnection.HTTP_OK) {// читает ответ сервера System.out.println (строитель); InputStream InputStream = httpConn.getInputStream (); // открывает поток вывода для записи файла FileOutputStream OutputStream = новый FileOutputStream (SAVEFILE); байт [] буфера = новый байт [BUFFER_SIZE]; INT BytesRead = -1; System.out.println ( "Получение данных ..."); в то время как ((BytesRead = InputStream. чтения (буфер)) = -1) {outputStream.write (буфер, 0, BytesRead!); } System.out.println ( "полученные данные."); outputStream.close (); inputStream.close (); } Еще {System.out.println ( "Сервер вернул ненулевой код ОК:" + responseCode); }} Сервер, защищенная недействительная doPost (HttpServletRequest запрос, HttpServletResponse ответ) бросает ServletException, IOException {INT BUFF_SIZE = 1024; байт [] буфера = новый байт [BUFF_SIZE]; Строка Filepath = "E: \\ \\ DOCS Следующая остановка Kurki.MP3"; Файл fileMp3 = новый файл (Filepath); если (fileMp3.exists ()) {System.out.println ( "Found:"); } Еще {System.out.println ( "ФНФ"); } Строка fNmae = fileMp3.getName (); FileInputStream Fis = новый FileInputStream (fileMp3); response.setContentType ( "аудио / MPEG"); response.setHeader ( "Content-Disposition", "вложение, имя файла = \" "+ fNmae + "\""); response.addHeader ( "Fname", fNmae); response.setContentLength ((INT) fileMp3.length ()); OutputStream OS = response.getOutputStream (); попробуйте {INT byteRead = 0; в то время как ((byteRead = fis.read (буфер)) = -1) {os.write (буфер, 0, byteRead); } Os.flush (); } Задвижка (Исключение excp) {// downloadComplete = "-1"; excp.printStackTrace (); } Наконец {os.close (); fis.close (); }} Я чувствую все правильно в стороне сервера, Может ли один помочь мне разобраться в этом. Было бы большим подспорьем. благодарю вас.
Raghu
1

голосов
1

ответ
1.3k

Просмотры

Как передать сгенерированный Буферизированный изображение из сервлета в ответ?

В моем Servlet сгенерировать BufferedImage: BufferedImage bgImage = createImage (); и я сохранить его: saveImage (bgImg, getImageSaveDir () + имя_образа); После этого я хочу, чтобы вернуть его в ответ, чтобы показать в браузере. Я пытался отправить изображение в ответ: Файл ImageFile = новый файл (getImageSaveDir () + имя_образа); response.setContentType ( "изображение / PNG"); BufferedImage bufferedImg = ImageIO.read (ImageFile); ServletOutputStream OUT = response.getOutputStream (); ImageIO.write (bufferedImg, "PNG", выход); out.close (); } Задвижка (Исключение ех) {ex.printStackTrace (); } Но я получаю исключение: ClientAbortException: java.net.SocketException: Поврежденная труба в org.apache.catalina.connector.OutputBuffer.realWriteBytes (OutputBuffer.java:369) в org.apache.tomcat.util.buf.ByteChunk.flushBuffer (ByteChunk.java:448) при org.apache. 39 более, что это лучший способ, чтобы передать сгенерированный Буферизированный изображение из сервлета в ответ и отобразить его в браузере? Я попытался это: BufferedImage originalImage = ImageIO.read (новый файл (getImageSaveDir () + имя_образа)); ByteArrayOutputStream BAOS = новый ByteArrayOutputStream (); ImageIO.write (originalImage, "PNG", BAOS); baos.flush (); байт [] imageInByte = baos.toByteArray (); baos.close (); response.setContentType ( "изображение / PNG"); response.setContentLength (imageInByte.length); ServletOutputStream ServletOutputStream = response.getOutputStream (); servletoutputstream.write (imageInByte); servletoutputstream.flush (); Теперь Exception не появляется, но код по-прежнему не работает :( BufferedImage originalImage = ImageIO.read (новый файл (getImageSaveDir () + имя_образ)); ByteArrayOutputStream BAOS = новый ByteArrayOutputStream (); ImageIO.write (originalImage, "PNG", BAOS); baos.flush (); байт [] imageInByte = baos.toByteArray (); baos.close (); response.setContentType ( "изображение / PNG"); response.setContentLength (imageInByte.length); ServletOutputStream ServletOutputStream = response.getOutputStream (); servletoutputstream.write (imageInByte); servletoutputstream.flush (); Теперь Exception не появляется, но код по-прежнему не работает :( BufferedImage originalImage = ImageIO.read (новый файл (getImageSaveDir () + имя_образ)); ByteArrayOutputStream BAOS = новый ByteArrayOutputStream (); ImageIO.write (originalImage, "PNG", BAOS); baos.flush (); байт [] imageInByte = baos.toByteArray (); baos.close (); response.setContentType ( "изображение / PNG"); response.setContentLength (imageInByte.length); ServletOutputStream ServletOutputStream = response.getOutputStream (); servletoutputstream.write (imageInByte); servletoutputstream.flush (); Теперь Exception не появляется, но код по-прежнему не работает :( ); response.setContentLength (imageInByte.length); ServletOutputStream ServletOutputStream = response.getOutputStream (); servletoutputstream.write (imageInByte); servletoutputstream.flush (); Теперь Exception не появляется, но код по-прежнему не работает :( ); response.setContentLength (imageInByte.length); ServletOutputStream ServletOutputStream = response.getOutputStream (); servletoutputstream.write (imageInByte); servletoutputstream.flush (); Теперь Exception не появляется, но код по-прежнему не работает :(
Dylan
1

голосов
2

ответ
181

Просмотры

Android регистрация пользователя в базе данных

Я получил регистрационное апи использовать подписаться пользователя на внутреннем интерфейсе Но это, кажется, не work.Need help.Thanks. Ниже приводится регистрация апи с последующим кодом Params: имя пользователя, электронная почта, PWD (пароль), CNAME (название компании), cmobile (компания номер мобильного телефона), cwebsite (сайт компании), cfbaddress (фб адрес компании), cbssid (BSSID компании ) Ссылка общественного класса MainActivity расширяет AppCompatActivity {EditText inUsername, inEmail, inPassword, inCompanyName, inCompanyWeb, inCompanyPh, inCompanyFb, inBSSid; TextView TXT; Кнопка btnSignup; @Override защищены недействительный OnCreate (Пачка savedInstanceState) {super.onCreate (savedInstanceState); setContentView (R.layout.activity_main); inUsername = (EditText) findViewById (R.id.input_user); inEmail = (EditText) findViewById (R.id.input_email_user); inCompanyPh = (EditText) findViewById (R.id. input_company_phone_number); inPassword = (EditText) findViewById (R.id.input_password_user); inCompanyName = (EditText) findViewById (R.id.input_company_name); inCompanyFb = (EditText) findViewById (R.id.input_company_fb_address); inBSSid = (EditText) findViewById (R.id.input_company_bssid); inCompanyWeb = (EditText) findViewById (R.id.input_company_website); TXT = (TextView) findViewById (R.id.txt_response); btnSignup = (кнопка) findViewById (R.id.btn_signup_user); inUsername.setText ( "мега"); inEmail.setText ( "megasu0[email protected]"); inPassword.setText ( "пароль"); inCompanyName.setText ( "ТТД"); inCompanyWeb.setText ( ""); inCompanyPh.setText ( "7896325410"); inCompanyFb.setText ( ""); inBSSid.setText ( "48f8b3aa05c5"); btnSignup. добавить (новый BasicNameValuePair ( "CNAME", inCompanyName.getText () ToString ()).); nameValuePairs.add (новый BasicNameValuePair ( "cwebsite", inCompanyWeb.getText () ToString ()).); nameValuePairs.add (новый BasicNameValuePair ( "cmobile", inCompanyPh.getText () ToString ()).); nameValuePairs.add (новый BasicNameValuePair ( "cfbaddress", inCompanyFb.getText () ToString ()).); nameValuePairs.add (новый BasicNameValuePair ( "cbssid", inBSSid.getText () ToString ()).); httppost.setHeader ( "Принять", "применение / JSON"); httppost.setHeader ( "Content-Type", "применение / JSON"); httppost.setEntity (новый UrlEncodedFormEntity (nameValuePairs)); Log.d ( "ERROR", HttpPost. . GetEntity () ToString ()); // Выполнение HTTP Post запрос ответ HttpResponse = httpclient.execute (HttpPost); InputStream = response.getEntity () getContent (). // 10. новообращенный InputStream в строку, если результат = convertInputStreamToString (InputStream) (= нулевой InputStream!); иначе результат = «Не работает!»; Log.d ( "ERROR", inputStream.toString ()); Log.d ( "ERROR", result.toString ()); txt.setText (результат); } Задвижка (ClientProtocolException е) {// TODO автоматической генерации улов блок} поймать (IOException е) {// TODO автоматической генерации улова блок}}}); } Частная строка convertInputStreamToString (InputStream InputStream) бросает IOException {BufferedReader BufferedReader = новый BufferedReader (новый InputStreamReader (InputStream)); Строка строка = «»; Результат String = ""; в то время как ((строка = bufferedReader.readLine ())! = NULL) результат + = строка; inputStream.close (); возвращать результат; } @Override общественного логический onCreateOptionsMenu (меню Menu) {// Накачайте меню; это добавляет элементы в панели действий, если он присутствует. . GetMenuInflater () надуваться (R.menu.menu_main, меню); возвращает истину; } @Override общественного логический onOptionsItemSelected (MenuItem элемент) {// Handle панели действий пункт щелкает здесь. Панель действий будет // автоматически обрабатывать клики по кнопке Home / Up до тех пор, // как вы указали родительское активность в AndroidManifest.xml. INT ID = item.getItemId (); // noinspection SimplifiableIfStatement если (идентификатор == R.id.action_settings) {возвращает истину; } Вернуть super.onOptionsItemSelected (пункт); }} LogCat: android.os.NetworkOnMainThreadException в android.os.StrictMode $ AndroidBlockGuardPolicy.onNetwork (StrictMode.java:1147) при libcore.io.BlockGuardOs.connect (BlockGuardOs.java:110) в libcore.io.IoBridge.connectErrno ( IoBridge.java:137) при libcore.io.IoBridge.connect (IoBridge.java:122) в java.net.PlainSocketImpl.connect (PlainSocketImpl.java:183) в java.net.PlainSocketImpl.connect (PlainSocketImpl.java:456 ) при java.net.Socket.connect (Socket.java:882) при org.apache.http.conn.scheme.PlainSocketFactory.connectSocket (PlainSocketFactory.java:124) в org.apache.http.impl.conn.
AnupamChugh
1

голосов
2

ответ
701

Просмотры

responseType свойство XMLHttpRequest принимать несколько значений

У меня есть ситуации, когда $ HTTP reponseType зависит от параметра URL запроса. При выводе целевой = HTML, и если я не упоминаю responseType вообще, я могу получить ответ в HTML правильно. Однако, когда выход-TARGET = XLS, мне нужно сделать это, чтобы заставить его работать и иметь responseType установлено ArrayBuffer (чтобы получить ответ в Excel) вар сгустке = новый Blob ([данные], {типа: «применение / vnd.ms -excel "}); $ HTTP ({метод: 'GET', URL: "https: //? Хуг / а выход-TARGET =" + $ scope.outputTarget, заголовки: { 'Content-Type': «применение / х-WWW-form- urlencoded», 'Accept': '* / *'}, responseType: ArrayBuffer // для $ scope.outputTarget = XLS}) Мне нужно то, что будет принимать все виды типов реагирования. Если эта опция не доступна, что путь вокруг? Я также попытался проходя функцию responseType, но это не сработало. responseType: (функция () {если ($ scope.outputTarget === "стол / первенствует; стр режим = поток") {вар возврат ArrayBuffer ArrayBuffer;} еще {возвращение;}})) документация responseType (
Madhumita Chowdhury
1

голосов
1

ответ
806

Просмотры

JavaScript / JQuery: не может получить «WWW-Authenticate» заголовок ответа

Я следующий JQuery-код: $ .ajax ({типа: "GET", URL: URL, в комплекте: функция (данные) {console.info (data.getResponseHeader ( "WWW-Authenticate"));}}); Который будет возвращать нуль. В Firebug я могу видеть, что заголовок «WWW-Authenticate» отправляется на сервер. Есть ли способ, чтобы получить заголовок? Если я могу увидеть его в Firebug, то это должно быть возможным, чтобы получить его в JQuery. Я уже пробовал такие вещи, как: beforeSend: функция (XHR) {xhr.setRequestHeader ( "withCredentials", правда); xhr.setRequestHeader ( "Access-Control-Expose-Headers", "WWW-Authenticate"); xhr.setRequestHeader ( "Access-Control-Allow-Headers", "WWW-Authenticate"); } Если я пытаюсь: data.getAllResponseHeaders () // Возвращает: Cache-Control: частная Content-Type: Текст / HTML Но в Firebug, Я вижу WAY больше заголовков ... намного больше. Большое спасибо! Большое спасибо!
Tream
1

голосов
2

ответ
297

Просмотры

Python Флакон: не удается подключиться к серверу или отладить

Когда я пытаюсь запустить сервер в этом примере я могу видеть, что он работает на правильный порт. Однако, это не представляется возможным, чтобы достичь ее извне (внутренняя ошибка сервера), ни для его отладки в консоли с помощью общих методов (не может видеть любой выход). Я уверен, что порт доступен и работает сервер. Как исправить или отладки это? из бутылки импорта перспективе, по почте, запрос, ответ, получить, маршрут @route ( '/', метод = 'GET') четкости процесса (путь): response.content_type = 'текст / html' возвращение 'Hello World GET' @route ( '/', метод = 'POST') процесс четкости (путь): response.content_type = 'текст / html' обратный ход 'привет мир' POST (хост = 'локальный', порт = 8000, отлаживать = True)
Peter Gerhat
1

голосов
1

ответ
777

Просмотры

Django HttpResponseRedirect, It returned None instead

Trying to make a form with Django and using a HttpResponseRedirect, I expected this should be fairly easy, however I seem to be doing something wrong. I keep getting an error: The view hotel.views.hotel_registration didn't return an HttpResponse object. It returned None instead. In this case my guess would be that HttpResponseRedirect is not working properly, since, when I remove the if statement with the contents everything is working fine, except I can't submit a form. I have 2 views: def hotel_registration(request): if request.method == 'POST': form = HotelRegistrationForm(request.POST) if form.is_valid(): return HttpResponseRedirect('hotel:hotel_registered') else: form = HotelRegistrationForm() return render(request, 'hotel/hotel-registration-form.html', {'form': form}) def hotel_registered(request): pass And in urls.py url(r'hotel-registratie/', hotel.views.hotel_registration, name='registration'), url(r'hotel-geregistreerd/', hotel.views.hotel_registered, name='registered'), These are all the parameters I have used in HttpResponseRedirect: HttpResponseRedirect('hotel:hotel_registered') HttpResponseRedirect('hotel_registered') HttpResponseRedirect('/hotel_registered/') HttpResponseRedirect(hotel_registered) And then I rust wanted to redirect back to root: HttpResponseRedirect('/') And using reverse: HttpResponseRedirect(reverse(hotel_registration)) HttpResponseRedirect(reverse('hotel_registration')) What would be the right way to do this?
Johan Vergeer
1

голосов
2

ответ
111

Просмотры

Есть альтернативный способ захвата текста с сайта, который не предоставляет API?

У нас есть бот для слабины, которые будут принимать ввод, например: библия John 3:17 (ESV) Это превратит в призыв к https://www.biblegateway.com/passage/?search=John+3:17&version=ESV Итак, что мы сделали сейчас, это просто Grep вне og.description, например, для выше, мы получим: завиток «https://www.biblegateway.com/passage/?search=John+3 : 17 & версия = ESV»| Grep "OG: Описание" | «/.* содержание s =" //»СЭД | СЭД„s /".*//“Ибо не послал Бог Сына Своего в мир, чтобы судить мир, но чтобы мир спасен был чрез Него. Это прекрасно работает для небольших запросов, например, библий John 3: 1-4 - однако, если мы запрашиваем большие участки, поле описания усеченных в определенной точке. Так что, если мы должны были сделать библии Иоанна 3, он будет возвращать только первые 5 или так стихи от Иоанна 1. Есть ли лучший способ пойти об этом, кроме завитка выше? Единственное место, в ответе, который содержит полный текст является исходным HTML, например ,: Джон 3English Standard Version (ESV) [... и т.д. и т.п. ...] Должны ли мы смотреть на что-то другое, чем просто HTTP запросов за это?
MrDuk
1

голосов
1

ответ
132

Просмотры

Создание ответа многочастного / ByteRange без сканирования деталей перед отправкой

Я хотел бы, чтобы создать многослойный ответ диапазона байт. Есть ли способ для меня, чтобы сделать это без сканирования каждого сегмента я собираюсь отправить, так как мне нужно, чтобы генерировать многокомпонентные граничные строки? Например, я могу иметь пользовательский запрос на ByteRange, который будет иметь меня принести и сканирование 2 ГБ данных, что в моем случае включает меня загрузка этих данных в моем (медленном) VM как строки и так далее. В идеале я хотел бы просто заявить в ответ, что часть имеет длину определенного количества байтов, и сделать с ней. Есть ли инструменты, которые могли бы предоставить мне этот вариант? Я вижу, что многие разработчики просто захватить UUID как границу и, вероятно, готово рисковать крошечную вероятность того, что он появится где-то в той части, но этот риск, как представляется, достаточно мал, несколько людей принимают его? Для того, чтобы объяснить более подробно: сканирование деталей загодя (до генерации ответа) на самом деле не представляется возможным в моем случае, так как мне нужно, чтобы извлечь их с помощью HTTP из вышестоящей службы. Это означает, что я должен эффективна предвыборку всей первую части, чтобы вычислить несовпадающую многослойную границу, и только после этого можно соединить эту часть в ответ.
Julik

Просмотр дополнительных вопросов