最近、クライアントの古いプロジェクトを取り上げました。元々は Zend フレームワークを使用して開発されましたが、これは私にとって新しいものです。正しいファイルを変更しようとしていますが、3 つのバージョンの API があります。
module.config には、次のようなルートがあります。
'api.rest.social-credential' => array(
'type' => 'Segment',
'options' => array(
'route' => '/social-credential[/:social_credential_id]',
'scheme' => 'http',
'defaults' => array(
'controller' => 'Api\\V1\\Rest\\SocialCredential\\Controller',
),
),
),
私にとってこれは、私が見るべきコントローラーがv1またはv1であることを意味しApi\\V1\\Rest\\SocialCredential\\Controller
ます。
2 つのコントローラーは次のように定義されます。 v1
'Api\\V1\\Rest\\SocialCredential\\Controller' => array(
'listener' => 'Api\\V1\\Rest\\SocialCredential\\SocialCredentialResource',
'route_name' => 'api.rest.social-credential',
'route_identifier_name' => 'social_credential_id',
'collection_name' => 'social_credential',
'entity_http_methods' => array(
0 => 'PATCH',
),
'collection_http_methods' => array(),
'collection_query_whitelist' => array(),
'page_size' => '25',
'page_size_param' => '',
'entity_class' => 'Api\\V1\\Rest\\SocialCredential\\SocialCredentialEntity',
'collection_class' => 'Api\\V1\\Rest\\SocialCredential\\SocialCredentialCollection',
'service_name' => 'SocialCredential',
),
v3
'Api\\V3\\Rest\\SocialCredential\\Controller' => array(
'listener' => 'Api\\V3\\Rest\\SocialCredential\\SocialCredentialResource',
'route_name' => 'api.rest.social-credential',
'route_identifier_name' => 'social_credential_id',
'collection_name' => 'social_credential',
'entity_http_methods' => array(
0 => 'PATCH',
1 => 'DELETE',
),
'collection_http_methods' => array(),
'collection_query_whitelist' => array(),
'page_size' => '25',
'page_size_param' => '',
'entity_class' => 'Api\\V3\\Rest\\SocialCredential\\SocialCredentialEntity',
'collection_class' => 'Api\\V3\\Rest\\SocialCredential\\SocialCredentialCollection',
'service_name' => 'SocialCredential',
),
この定義が存在する以外に、v3をターゲットにする必要があると信じさせるmodule.configには何も見つかりません。何かが足りないか、Zend ルーティングの仕組みがわかりません。誰かがこれに光を当てることができますか?