Когда вы объявляете параметр int c
во втором func
, он затеняет глобальный c
, поэтому все дальнейшие изменения в рамках функции применяются только к локальному c
вместо глобального.
Корректный, браузеры на самом деле не поддерживают отправку, удаляют запросы. Принятая конвенция многих веб-платформ состоит в том, чтобы отправить _method набор параметра, чтобы 'УДАЛИТЬ', и использовать запрос POST.
Вот пример в направляющих:
<%= link_to 'log out', session_path, :method => :delete %>
Можно хотеть взглянуть на Успокоительную Аутентификацию.
Я не знаю о направляющих а именно, но я часто создаю веб-страницы, которые отправляют, УДАЛЯЮТ (и ПОМЕСТИТЕ), запросы, с помощью JavaScript. Я просто использую объекты XmlHttpRequest отправить запрос.
Например, если Вы используете jQuery:
имейте ссылку, которая похожа на это:
<a class="delete" href="/path/to/my/resource">delete</a>
И выполненный этот JavaScript:
$(function(){
$('a.delete').click(function(){
$.ajax(
{
url: this.getAttribute('href'),
type: 'DELETE',
async: false,
complete: function(response, status) {
if (status == 'success')
alert('success!')
else
alert('Error: the service responded with: ' + response.status + '\n' + response.responseText)
}
}
)
return false
})
})
Я записал этот пример главным образом из памяти, но я вполне уверен, он будет работать....
Исправьте меня, если я неправ, но я полагаю, что можно только отправить POST и ПОЛУЧИТЬ запросы с браузером (в HTML).