HTTP POST - Я застреваю

Это не волшебство. Проблема находится в разрешающей процедуре jQuery на элементе [type]. Ваш тестовый элемент не имеет настраиваемого обработчика, но вместо этого имеет собственный обработчик кликов.

Итак, ваше грязное исправление может выглядеть так:

**test.custom = function () {console.log('custom fixed')};**

Пожалуйста, посмотрите фрагмент кода из jquery-1.7.2.js ниже:

// Call a native DOM method on the target with the same name name as the     event.
// Can't use an .isFunction() check here because IE6/7 fails that test.
// Don't do default actions on window, that's where global variables be (#6170)
// IE<9 dies on focus/blur to hidden element (#1486)
if (ontype && elem[type] && ((type !== "focus" && type !== "blur") ||   event.target.offsetWidth !== 0) && !jQuery.isWindow(elem)) {
// Don't re-trigger an onFOO event when we call its FOO() method
old = elem[ontype];

if (old) {
    elem[ontype] = null;
}

// Prevent re-triggering of the same event, since we already bubbled it above
jQuery.event.triggered = type;
elem[type]();
jQuery.event.triggered = undefined;

if (old) {
    elem[ontype] = old;
}

}

5
задан miqbal 13 June 2012 в 20:43
поделиться

9 ответов

Как сказанный @lassevk, не будет работать перенаправление.

Необходимо использовать класс WebRequest, чтобы сделать POST HTTP от страницы или приложения. Здесь существует пример.

1
ответ дан 14 December 2019 в 19:31
поделиться

Вы попробовали класс WebClient? Пример мог бы быть похожим:

        WebClient client = new WebClient();
        NameValueCollection data = new NameValueCollection();
        data["var1"] = "var1";
        client.UploadValues("http://somewhere.com/api", "POST", data);
3
ответ дан 14 December 2019 в 19:31
поделиться

Смотрите на HttpWebRequest. Необходимо смочь создать запрос к URL рассматриваемое использование HttpWebRequest. Метод = "POST".

1
ответ дан 14 December 2019 в 19:31
поделиться

Я думаю, что они означают, что не хотят, чтобы Вы использовали параметры URL (ДОБИРАЮТСЯ). При использовании http заголовков это действительно не запрашивает через POST больше.

0
ответ дан 14 December 2019 в 19:31
поделиться

Необходимо разместить больше информации.

Например, этот C#? Это похоже на него, но я мог бы быть неправым.

Кроме того, Вы говорите, что получаете исключение, каковы тип исключительной ситуации и сообщение?

В любом случае Вы не можете перенаправить к странице для POST, необходимо отправить его от браузера, не от перенаправления сервера, поэтому если бы Вы хотите автоматизировать это, я предположил бы, что необходимо было бы генерировать страницу HTML с тегом form, с некоторыми скрытыми полями ввода, и затем отправить его с JavaScript.

0
ответ дан 14 December 2019 в 19:31
поделиться

Какой язык/платформа?

Используя Python и httplib2, необходимо смочь сделать что-то как:

http = httplib2.Http()
http.request(url, 'POST', headers={'key': 'value'}, body=urllib.urlencode(''))
0
ответ дан 14 December 2019 в 19:31
поделиться

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

Существует перечисление, которое перечисляет все поддерживаемые HTTP-заголовки также.

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

0
ответ дан 14 December 2019 в 19:31
поделиться

Я протестировал Ваш сценарий с помощью 2 демонстрационных страниц с помощью опции XmlHttpRequest. Пользовательские заголовки доступны на aspx странице, отправленной на, с помощью XmlHttpRequest.

Создайте следующие 2 страницы. Удостоверьтесь, что aspx страница находится в решении, так, чтобы можно было выполнить в отладчике, установить точку останова и осмотреть Запрос. Набор заголовка.

<HTML>

<голова>

&lt; script language="javascript"&gt;

function SendRequest()
{
    var r = new XMLHttpRequest();
    r.open('get', 'http://localhost/TestSite/CheckHeader.aspx');
    r.setRequestHeader('X-Test', 'one');
    r.setRequestHeader('X-Test', 'two');
    r.send(null);

}
&lt; script / &gt;

</голова> <тело> <форма> <входной тип = значение "кнопки" = "Нажимают Меня" OnClick = "SendRequest ()";/> </форма> </тело> </HTML>


CheckHeader.aspx

использование Системы;

использование Системы. Сеть;

использование Системы. Сеть. UI;

общедоступный частичный класс CheckHeader: Система. Сеть. UI.Page

{

protected void Page_Load(object sender, EventArgs e)
{
    string value = string.Empty;
    foreach (string key in Request.Headers)
        value = Request.Headers[key].ToString();
}

}

Человек.. Этот HTML-редактор сосет.. или я не знаю, как использовать его...

0
ответ дан 14 December 2019 в 19:31
поделиться

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

Когда я начал создавать свой Запрос после одного из mothods, обозначенных здесь, я мог записать свои заголовки.

Теперь я использую объект WebRequest, как в образце, обозначенном @sectrean, здесь.

Большое спасибо ко всем. Скалы StackOverflow :-)

0
ответ дан 14 December 2019 в 19:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: