Это не волшебство. Проблема находится в разрешающей процедуре 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;
}
}
Как сказанный @lassevk, не будет работать перенаправление.
Необходимо использовать класс WebRequest, чтобы сделать POST HTTP от страницы или приложения. Здесь существует пример.
Вы попробовали класс WebClient? Пример мог бы быть похожим:
WebClient client = new WebClient();
NameValueCollection data = new NameValueCollection();
data["var1"] = "var1";
client.UploadValues("http://somewhere.com/api", "POST", data);
Смотрите на HttpWebRequest. Необходимо смочь создать запрос к URL рассматриваемое использование HttpWebRequest. Метод = "POST".
Я думаю, что они означают, что не хотят, чтобы Вы использовали параметры URL (ДОБИРАЮТСЯ). При использовании http заголовков это действительно не запрашивает через POST больше.
Необходимо разместить больше информации.
Например, этот C#? Это похоже на него, но я мог бы быть неправым.
Кроме того, Вы говорите, что получаете исключение, каковы тип исключительной ситуации и сообщение?
В любом случае Вы не можете перенаправить к странице для POST, необходимо отправить его от браузера, не от перенаправления сервера, поэтому если бы Вы хотите автоматизировать это, я предположил бы, что необходимо было бы генерировать страницу HTML с тегом form, с некоторыми скрытыми полями ввода, и затем отправить его с JavaScript.
Какой язык/платформа?
Используя Python и httplib2, необходимо смочь сделать что-то как:
http = httplib2.Http()
http.request(url, 'POST', headers={'key': 'value'}, body=urllib.urlencode(''))
Я полагаю, что объект Запроса только принял бы определенный набор предопределенных заголовков.
Существует перечисление, которое перечисляет все поддерживаемые HTTP-заголовки также.
Но я не могу помнить это в данный момент... Я буду искать его через секунду...
Я протестировал Ваш сценарий с помощью 2 демонстрационных страниц с помощью опции XmlHttpRequest. Пользовательские заголовки доступны на aspx странице, отправленной на, с помощью XmlHttpRequest.
Создайте следующие 2 страницы. Удостоверьтесь, что aspx страница находится в решении, так, чтобы можно было выполнить в отладчике, установить точку останова и осмотреть Запрос. Набор заголовка.
<HTML>
<голова>
< script language="javascript">
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);
}
< script / >
</голова> <тело> <форма> <входной тип = значение "кнопки" = "Нажимают Меня" 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-редактор сосет.. или я не знаю, как использовать его...
Исключение, с которым я сталкивался вчера, было вызвано моей глупой попыткой записать на заголовках уже созданной страницы.
Когда я начал создавать свой Запрос после одного из mothods, обозначенных здесь, я мог записать свои заголовки.
Теперь я использую объект WebRequest, как в образце, обозначенном @sectrean, здесь.
Большое спасибо ко всем. Скалы StackOverflow :-)