public function updateBlob($product, $name, $route) { $data = Flight::request()->data; $pkg = new Pkg(); $info = $pkg->getPackageInfo($product, $name); if ($info) { $base = $info['path']; } else { $base = '/' . $product . '/' . $name; } $path = $base . '/' . $this->getSplat($route); if ($data->content !== null) { $ret = $pkg->saveFileContent($path, $data->content, $data->charset); } elseif ($data->name !== null) { $ret = $pkg->operateFile($path, 'rename', null, $data->name); } elseif ($data->mode !== null) { $ret = $pkg->operateFile($path, 'chmod', $data->mode); } else { Flight::json(null, 400); } // 控制 Curl 请求错误 $this->handleCurlError($pkg); Flight::json($ret); }