私は、json APIコールを使用してMySQLデータベースの作成を自動化しようとしています。 dbsを表示するには、次のようなものを使用してください:cPanel API jsonコールを使用してMySQL DBを作成できますか?
https://example.com:2083/json-api/cpanel?user=username&cpanel_jsonapi_module=MysqlFE&cpanel_jsonapi_func=listdbs&cpanel_jsonapi_version=2
これはHTTPソケットとCURLで成功しました。 adddbに相当する呼び出しはありますか?
https://example.com:2083/json-api/cpanel?user=username&cpanel_jsonapi_module=Mysql&cpanel_jsonapi_func=adddb&dbname=aa1&cpanel_jsonapi_version=1
これは機能しません。次のエラーが表示されます。
「無効なデータベース名です。無効な文字が含まれています。
アイデア?
UPDATE:
私は次のコードではCakePHPにおけるHTTPソケット接続を介してこれを実行している:あなたは二回、URLのdbnameを持って
$query = 'cpanel_jsonapi_module=MysqlFE&cpanel_jsonapi_func=adddb&dbname=aa1&cpanel_jsonapi_version=2';
$request = array(
'auth' => array(
'user' => $queryData['conditions']['username'],
'pass' => $queryData['conditions']['password'],
'method' => 'Basic',
),
'uri' => array(
'scheme' => 'https',
'host' => $queryData['conditions']['host'],
'port' => '2083',
'user' => $queryData['conditions']['username'],
'path' => 'json-api/cpanel',
'query' => $query,
),
);
$result = json_decode($this->connection->request($request), true);
1つのdbnameリクエストを反映するように投稿を編集しました。実際にコードに複数のdbnameが含まれていません。フィールド。私はこの記事の前にAPIドキュメントを読んだ。しかし、私はあなたの提案を試み、 '(eval 6)line 1、near()'の文法エラーを受け取りました。 –