fix query including percent-encoded id

This commit is contained in:
Babibubebon 2020-01-23 16:19:21 +09:00
parent e580cd2c53
commit 3b3e1acfeb
2 changed files with 4 additions and 5 deletions

View file

@ -25,10 +25,9 @@ class ResourceController extends Controller
/**
* @param $request
* @param $id
* @return \EasyRdf_Graph
*/
protected function querySparql($request, $id)
protected function querySparql($request)
{
$client = new \EasyRdf_Sparql_Client($request->datasetConfig['endpoint']);
$query = <<<EOT
@ -51,7 +50,7 @@ EOT;
*/
public function html(Request $request, $id)
{
$graph = $this->querySparql($request, urldecode($id));
$graph = $this->querySparql($request);
if ($graph->isEmpty()) {
abort(404);
}
@ -75,7 +74,7 @@ EOT;
abort(400);
}
$graph = $this->querySparql($request, $id);
$graph = $this->querySparql($request);
try {
$data = $graph->serialise(substr($ext, 1));
} catch (\EasyRdf_Exception $e) {

View file

@ -22,7 +22,7 @@ class DatasetMiddleware
$datasetName = explode('.', $request->route()[1]['as'])[1];
$currentDatasetConfig = config('datasets.' . $datasetName);
$id = $request->route('id');
$id = urldecode($request->route('id'));
$resourceUri = str_replace('{id}', $id, $currentDatasetConfig['resource_uri']);
$dataUri = str_replace('{id}', $id, $currentDatasetConfig['data_uri']);