相关疑难解决方法(0)

大多数Web浏览器中是否提供PUT,DELETE,HEAD等方法?

我在这里看到了几个问题,例如如何调试RESTful服务,其中提到:

不幸的是,相同的浏览器不允许我测试HTTP PUT,DELETE,甚至在某种程度上测试HTTP POST.

我也听说过浏览器只支持GET和POST,来自其他一些来源:

但是,Firefox中的一些快速测试显示发送PUTDELETE请求按预期工作 - XMLHttpRequest成功完成,并且请求以正确的方法显示在服务器日志中.我是否缺少某些方面,例如跨浏览器兼容性或非明显的限制?

browser ajax http cross-browser

596
推荐指数
7
解决办法
23万
查看次数

如何在除头之外的ajax DELETE请求中传递数据

以下是我对DELETE请求的Ajax 请求:

deleteRequest: function (url, Id, bolDeleteReq, callback, errorCallback) {
    $.ajax({
        url: urlCall,
        type: 'DELETE',
        headers: {"Id": Id, "bolDeleteReq" : bolDeleteReq},
        success: callback || $.noop,
        error: errorCallback || $.noop
    });
}
Run Code Online (Sandbox Code Playgroud)

有没有其他方法来传递数据而不是headers

ajax jquery

56
推荐指数
1
解决办法
10万
查看次数

哪些浏览器不支持使用jQuery.ajax的HTTP DELETE?

可能重复:
大多数Web浏览器中是否提供PUT,DELETE,HEAD等方法?

jQuery.ajax()的jQuery文档说明如下:

注意:此处也可以使用其他HTTP请求方法,例如PUT和DELETE,但并非所有浏览器都支持它们.

jQuery本身表示它支持IE 6.0 +,FF 2 +,Safari 3.0 +,Opera 9.0+和Chrome.那么上面哪个(如果有的话)不支持HTTP DELETE?

javascript ajax jquery cross-browser

44
推荐指数
2
解决办法
3万
查看次数

从Sinatra发送DELETE请求

我正在尝试开发RESTful Sinatra应用程序.现在,我知道如何用类似的方式响应删除请求

delete '/user/:id' do |id|
   #do something in the model
end
Run Code Online (Sandbox Code Playgroud)

我感兴趣的是如何执行该方法.我不能拥有DELETE而不是GET的链接,是吗?

到目前为止我找到的唯一解决方案是通过jQuery发送DELETE请求:如何在jQuery中发送PUT/DELETE请求?

我尝试在github上查看不同的RESTful Sinatra项目,但我的Ruby知识可能仅限于了解它们是如何做到的.

ruby rest httprequest sinatra http-delete

19
推荐指数
3
解决办法
1万
查看次数

Express不能PUT/DELETE方法.出了什么问题?

好吧我有一个简单的node.js/express.js/mongodb应用程序在这里设置我的配置如下.

var express = require('express'),
    mongoose = require('mongoose');
    http = require('http');

var app = express();

    app.configure(function(){
    app.set('port', process.env.PORT || 3000);
    app.set('views', __dirname + '/views');
    app.set('view engine', 'jade');

    //middleware stack
    app.use(express.bodyParser());
    app.use(express.methodOverride());
    app.use(app.router);
    app.use(express.static(__dirname + "/public"));
});

mongoose.connect("mongodb://localhost/hello");
Run Code Online (Sandbox Code Playgroud)

问题出在我尝试发出PUT或DELETE请求时.我的形式很简单

<form method="POST" action="/users/#{user.name}">
    <input type="hidden" name="_method" value="PUT"/>
</form>
Run Code Online (Sandbox Code Playgroud)

现在我的路由器使用express .put()方法捕获路由

app.put('/users/:name', function(req, res) {

    var b = req.body;

    Users.update(
        { name: req.user.name },
        { name: b.name, age: b.age, email: b.email },
        function(err) {
            res.redirect('/users/'+b.name);
        });
})
Run Code Online (Sandbox Code Playgroud)

当我发出请求时,我只是得到一个"无法PUT"或"无法删除"错误.

我试图通过chomes RESTful客户端以相同的结果发出同样的请求.

我已经阅读了一个与我有同样问题的话题,尽管在评论之后答案并没有解决我的问题.

问题我已经研究了 表达式删除和没有方法覆盖的表达式 …

rest mongoose mongodb node.js express

15
推荐指数
1
解决办法
5万
查看次数

我可以使用Google云端存储签名网址进行可恢复上传吗?

使用Google云端存储,我想向客户端提供必要的信息以进行可恢复的上传.这可能吗?

upload google-cloud-storage

10
推荐指数
2
解决办法
2285
查看次数

401通过Ajax向laravel中的RESTful API进行未经授权的DELETE请求

我使用laravel控制器创建了一个宁静的API 。我有一个PhotosController具有destroy($id)删除资源的方法。我也有一段JavaScript代码向DELETE我的应用发送请求。结果应该是删除带有$idID 的照片。但是laravel不会将我的请求路由到destroy方法。而是发送401未经授权错误。

问题是我想通过发送DELETE请求到我的应用程序Ajax,但是laravel不允许我的请求被路由!

route.php文件:

Route::resource('photos', 'PhotosController');
Run Code Online (Sandbox Code Playgroud)

销毁方法:

public function destroy($id)
{
    try{
        unlink($_SERVER["DOCUMENT_ROOT"].'/uploads/doctors/' . $id);
        Session::forget('photo');
        $msg = Notification::where('flag', 's')->where('code', 'user-update-delete-photo-gallery')->first()->msg;
        return Response::json(array('success' => $msg));
    }catch (Exception $e){
        App::abort(500, $e->getMessage());
    }
}
Run Code Online (Sandbox Code Playgroud)

我的Ajax请求:

$.ajax(
    {
        url: "/photos/" + name,
        method : "DELETE", // Or POST : result is the same
        data :{
            _token : $("input[name=_token]").val(),
            _method : …
Run Code Online (Sandbox Code Playgroud)

php ajax rest jquery laravel

4
推荐指数
1
解决办法
8527
查看次数

如何像在Backbone中一样在JQuery中模拟"DELETE"请求方法?

在Backbone中,有一个"DELETE".

this.model.url = '/js/products/123/destroy';
this.model.destroy();
Run Code Online (Sandbox Code Playgroud)

我怎样才能在JQuery中模拟这个?

在我的node.js应用程序中,我专门寻找app.delete.

.   Request URL:http://mydomain.com/js/products/2/destroy
.   Request Method:DELETE
.   Status Code:?200 OK
.   Request Headersview source
.   Accept:application/json, text/javascript, */*; q=0.01
.   Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q=0.3
.   Accept-Encoding:gzip,deflate,sdch
.   Accept-Language:en-US,en;q=0.8
.   Connection:keep-alive
.   Cookie:connect.sid=s%3ALmcKt2dNgSzfQCyCAcVlPeg6.bFXUPlpuZctDpfN2Gu5mtslVC9nA3FOi908Qe8aExYY
.   Host:mydomain.com
.   Origin:http://mydomain.com
.   Referer:http://mydomain.com/1
.   User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_2) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.65 Safari/537.31 AlexaToolbar/alxg-3.1
.   X-Requested-With:XMLHttpRequest
.   Response Headersview source
.   Connection:keep-alive
.   Content-Length:27
.   Content-Type:text/html; charset=utf-8
.   Date:Sun, 14 Apr 2013 02:57:17 GMT
.   X-Powered-By:Express
Run Code Online (Sandbox Code Playgroud)

javascript jquery backbone.js

2
推荐指数
1
解决办法
1290
查看次数