使用带有默认URL GET格式而不是路径格式的yii rest api
我对yii restapi有问题。我在yii框架页面上按照教程进行了配置,但之后我意识到我的api可以工作,但在我的页面的某些部分不能工作,因为它基于GET URL格式,而不是restapi所需的路径 因此,在我的config/main.php中,我有以下设置使用带有默认URL GET格式而不是路径格式的yii rest api,yii,yii-url-manager,yii-rest,Yii,Yii Url Manager,Yii Rest,我对yii restapi有问题。我在yii框架页面上按照教程进行了配置,但之后我意识到我的api可以工作,但在我的页面的某些部分不能工作,因为它基于GET URL格式,而不是restapi所需的路径 因此,在我的config/main.php中,我有以下设置 'urlManager' => array ( 'urlFormat' => 'path', 'rules' => arra
'urlManager' => array (
'urlFormat' => 'path',
'rules' => array (
'student/<id:\d+>/<title:.*?>' => 'student/view',
'students/<tag:.*?>' => 'student/index',
array (
'apistudent/register',
'pattern' => 'api/<model:\w+>',
'verb' => 'POST'
),
'<controller:\w+>/<action:\w+>' => '<controller>/<action>'
)
),
'urlManager'=>数组(
“urlFormat”=>“路径”,
'规则'=>数组(
“学生/”=>“学生/视图”,
“学生/”=>“学生/索引”,
排列(
“学生/注册”,
“模式”=>“api/”,
'动词'=>'后'
),
'/' => '/'
)
),
我还有一个名为ApiStudentController的控制器,其方法名为actionRegister()
如前所述,api正常工作,但我的页面不正常,因为我将urlFormat设置为“path”
问题是。。。如果没有路径url格式,而没有默认的get url格式(index.php?r=apistudent/register),如何使用RESTAPI?我在yii 1.x中也遇到了同样的问题。我只需要我的API控制器单独使用旧的GET格式而不是PATH格式(因为我用PATH格式更改了我的网站URL)。最后,我在脚本文件中做了一个小改动,使它工作起来
$app = Yii::createWebApplication($env->configWeb); //store the app
//Change the UrlFormat for urlManager to get if a get request is given instead of a path format one.
if (isset($_GET['r'])) {
Yii::app()->urlManager->setUrlFormat('get');
}
$app->run(); //run the app
我不知道这是否解决了你的问题。但这可以给你一个想法。快乐编码 我在yii 1.x中也遇到了同样的问题。我只需要我的API控制器单独使用旧的GET格式而不是PATH格式(因为我用PATH格式更改了我的网站URL)。最后,我在脚本文件中做了一个小改动,使它工作起来
$app = Yii::createWebApplication($env->configWeb); //store the app
//Change the UrlFormat for urlManager to get if a get request is given instead of a path format one.
if (isset($_GET['r'])) {
Yii::app()->urlManager->setUrlFormat('get');
}
$app->run(); //run the app
我不知道这是否解决了你的问题。但这可以给你一个想法。快乐编码 嗨,你有办法吗?嗨,你有办法吗?