antwebes / chatea-client-bundle
ChateaClient库的Symfony2扩展包,使使用api.chatea.net的API变得简单
Requires
- antwebes/chatea-client-lib: 1.0.1
- antwebes/chatea-common: 0.1.0
- antwebes/chatea-secure-bundle: 0.3.*
- beelab/recaptcha2-bundle: ~2.0
- doctrine/annotations: ^1.2
- symfony/assetic-bundle: ~2.3
- symfony/symfony: ~3.4
Requires (Dev)
- phpunit/phpunit: ~4.7
- sensio/framework-extra-bundle: ^3.0
- dev-master
- v1.2.1
- v1.2.0
- v1.1.0
- v1.0.4
- v1.0.3
- v1.0.2
- v1.0.1
- v1.0.0
- v0.1.41
- v0.1.40
- v0.1.39
- v0.1.38
- v0.1.37
- v0.1.36
- v0.1.35
- v0.1.34
- v0.1.33
- v0.1.32
- v0.1.31
- v0.1.30
- v0.1.29
- v0.1.28
- v0.1.27
- v0.1.26
- v0.1.25
- v0.1.24
- v0.1.23
- v0.1.22
- v0.1.21
- v0.1.20
- v0.1.19
- v0.1.18
- v0.1.17
- v0.1.16
- v0.1.15
- v0.1.14
- v0.1.13
- v0.1.12
- v0.1.11
- v0.1.10
- v0.1.9
- v0.1.8
- v0.1.7
- v0.1.6
- v0.1.5
- v0.1.4
- v0.1.3
- v0.1.2
- v0.1.1
- v0.1.0
- dev-testa
- dev-develop
- dev-mans_networking_sf_28
- dev-mans_networking
- dev-symfony_28
- dev-update_27
- dev-update_28
- dev-reduce_register_errors
- dev-remove_me
- dev-fix_composer_json
- dev-pending_profile_fields
- dev-disable_photos_counter
- dev-no_skip_register
- dev-refine_register_form
- dev-addPrefixApiForJsonRequest
This package is auto-updated.
Last update: 2024-08-29 03:57:59 UTC
README
ChateaClient库的Symfony2扩展包,使使用api.chatea.net的API变得简单
安装
-
将Bundle添加到AppKernel.php ( ChateaClientBundle 和 ChateaSecureBundle )
new Ant\Bundle\ChateaClientBundle\ChateaClientBundle() new Ant\Bundle\ChateaSecureBundle\ChateaSecureBundle()
-
不需要添加配置文件或routing.yml
antwebes_chateclient:
resource: '@ChateaClientBundle/Resources/config/routing.xml'
prefix: /
- 在app/config/config.yml中配置应用程序的client_id和secret
chatea_secure:
app_auth:
client_id: %chatea_client_id%
secret: %chatea_secret_id%
enviroment: %chatea_enviroment%
api_endpoint: %api_endpoint%
chatea_client:
app_auth:
client_id: %chatea_client_id%
secret: %chatea_secret_id%
api_endpoint: %api_endpoint%
app_id: %chatea_app_id%
authenticate_client_as_guest: true|false #optional (by deafault false) to indicate if client authenticates as guest. In case of false it authenticates with client credentials
<<<<<<< HEAD
visits_limit: INTEGER #optional (by default 3) the number of the last N visits to show in the welcome login page
=======
register_with_profile: true|false (by default true) to indicate if we whant to take the register profile step
can_skip_register_profile: true|false (by default true) to indicat if we allow the skip button in the register profile page
>>>>>>> no_skip_register_register_end_step
beelab_recaptcha2:
site_key: %recaptcha_public_key%
secret: %recaptcha_private_key%
enabled: %recaptcha_enabled%
- 在app/config/security.yml中配置firewall
security:
providers:
antwebs_chateaclient_provider:
id: antwebs_chateaclient_user_provider
firewalls:
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
login:
pattern: ^/auth/login$
security: false
secured_area:
pattern: ^/
anonymous: ~
antwebs_chateaclient_login:
check_path: _security_check
login_path: _antwebes_chateaclient_login
provider: antwebs_chateaclient_provider
logout:
invalidate_session: false
path: _antwebes_chateaclient_logout
target: nombre_ruta_a_derigir_tras_logout
handlers: [antwewebs_revoke_access_on_logout_handler]
认证
默认情况下,所有对apichatea的调用都使用应用程序的用户进行。
如果您想调用需要登录用户进行认证的apichatea,请使用@APIUser注解。
实现于
Ant\Bundle\ChateaClientBundle\EventListener\AuthTokenUpdaterListener;
该注解会检查用户是否已认证,如果是,将使用已认证用户进行apichatea的调用。示例
namespace Acme\MiBundel\Controller;
use Ant\Bundle\ChateaClientBundle\Security\Authentication\Annotation\APIUser;
class UsuarioController
{
/**
* @APIUser
*
*/
public function actualizarNombreUsuarioAction()
{
//código
}
}
如果控制器中的所有方法都需要已登录用户,可以在类中添加该注解。示例
namespace Acme\MiBundel\Controller;
use Ant\Bundle\ChateaClientBundle\Security\Authentication\Annotation\APIUser;
/**
* @APIUser
*
*/
class AreaRestringidaController
{
public function accion1Action()
{
//código
}
public function accion2Action()
{
//código
}
}
该注解由监听器Ant\Bundle\ChateaClientBundle\EventListener\AuthTokenUpdaterListener
处理,该监听器监听控制器事件,以确定是否需要根据需要更新用户的access token。
使欢迎登录页面生效
为了使欢迎登录页面生效,您必须配置twig全局变量boilerplate_users_base_url
和boilerplate_channels_base_url
。例如
twig:
globals:
boilerplate_users_base_url: http://myboilerplate.com/users
boilerplate_channels_base_url: http://myboilerplate.com/channels
为了在登录后重定向用户到欢迎页面,请在firewall中配置default_target_path
为chatea_client_welcome
,并将always_use_default_target_path
设置为true