Show a empty response for GET on non-files instead of the Browser Plugin
This commit is contained in:
parent
5b6caf763c
commit
432d7be8cc
2 changed files with 45 additions and 1 deletions
|
@ -41,7 +41,8 @@ $server->setBaseUri($baseuri);
|
|||
$defaults = new OC_Defaults();
|
||||
$server->addPlugin(new \Sabre\DAV\Auth\Plugin($authBackend, $defaults->getName()));
|
||||
$server->addPlugin(new \Sabre\DAV\Locks\Plugin($lockBackend));
|
||||
$server->addPlugin(new \Sabre\DAV\Browser\Plugin(false, false)); // Show something in the Browser, but no upload
|
||||
// FIXME: The following line is a workaround for legacy components relying on being able to send a GET to /
|
||||
$server->addPlugin(new \OC\Connector\Sabre\DummyGetResponsePlugin());
|
||||
$server->addPlugin(new \OC\Connector\Sabre\FilesPlugin($objectTree));
|
||||
$server->addPlugin(new \OC\Connector\Sabre\MaintenancePlugin());
|
||||
$server->addPlugin(new \OC\Connector\Sabre\ExceptionLoggerPlugin('webdav'));
|
||||
|
|
43
lib/private/connector/sabre/dummygetresponseplugin.php
Normal file
43
lib/private/connector/sabre/dummygetresponseplugin.php
Normal file
|
@ -0,0 +1,43 @@
|
|||
<?php
|
||||
/**
|
||||
* Copyright (c) 2015 Lukas Reschke <lukas@owncloud.com>
|
||||
* This file is licensed under the Affero General Public License version 3 or
|
||||
* later.
|
||||
* See the COPYING-README file.
|
||||
*/
|
||||
|
||||
namespace OC\Connector\Sabre;
|
||||
|
||||
/**
|
||||
* Class DummyGetResponsePlugin is a plugin used to not show a "Not implemented"
|
||||
* error to clients that rely on verifying the functionality of the ownCloud
|
||||
* WebDAV backend using a simple GET to /.
|
||||
*
|
||||
* This is considered a legacy behaviour and implementers should consider sending
|
||||
* a PROPFIND request instead to verify whether the WebDAV component is working
|
||||
* properly.
|
||||
*
|
||||
* FIXME: Remove once clients are all compliant.
|
||||
*
|
||||
* @package OC\Connector\Sabre
|
||||
*/
|
||||
class DummyGetResponsePlugin extends \Sabre\DAV\ServerPlugin {
|
||||
/** @var \Sabre\DAV\Server */
|
||||
protected $server;
|
||||
|
||||
/**
|
||||
* @param \Sabre\DAV\Server $server
|
||||
* @return void
|
||||
*/
|
||||
function initialize(\Sabre\DAV\Server $server) {
|
||||
$this->server = $server;
|
||||
$this->server->on('method:GET', [$this,'httpGet'], 200);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return false
|
||||
*/
|
||||
function httpGet() {
|
||||
return false;
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue