2017-01-19 3 views
2

WP REST API에 정수 값을 전달할 수 있습니다. 그러나 숫자가 아닌 문자는 전달할 수 없습니다. 오류가 발생합니다.WP REST API에 문자열 매개 변수 전달

이 내가 사용하는 것입니다 ...

add_action('rest_api_init', function() { 
    register_rest_route('crowdapi/v1', '/register/(?P<id>\d+)/(?P<username>\d+)', array(
     'methods' => 'POST', 
     'callback' => 'userCheck', 
    )); 
}); 

뿐만 아니라 문자열을 전달하는 방법을 어떤 생각 ..?

답변

4

나는 ..

add_action('rest_api_init', function() { 
    register_rest_route('crowdapi/v1', '/register/(?P<id>\d)/(?P<username>\d)', array(
     'methods' => 'POST', 
     'callback' => 'userCheck', 
    )); 
}); 
1

문자열을

... 그것을 사용 [a-zA-Z0-9-] 대신 \d 나 자신을 발견 : /(?P<slug>\w+)

+0

'(? P . +)'를 사용했습니다. 문자열 매개 변수에는'(? P [^ /] +)'가 사용됩니다. 그것은 정말로 당신이 입을뿐만 아니라 돌아올 필요가 있는지에 달려 있습니다. – MrMesees

2

이 나를 위해 일뿐만 아니라 엔드 포인트를 정의하는 코드 아래에보십시오

add_action('rest_api_init', function() { 
    register_rest_route('crowdapi/v1', '/register/(?P<id>\d+)/(?P<number>[a-zA-Z0-9-]+)', array(
     'methods' => 'POST', 
     'callback' => 'userCheck', 
    )); 
});