2014-06-26 15 views
5

stworzyłem webhook w Bigcommerce za pomocą następującego kodu:Bigcommerce Webhook Nie Wyzwalanie

use Bigcommerce\Api\Connection; 

$connection = new Connection(); 

$connection->setCipher('RC4-SHA'); 
$connection->verifyPeer(false); 
$connection->addHeader('X-Auth-Client', $clientId); 
$connection->addHeader('X-Auth-Token', $token); 

$response = $connection->post('https://api.bigcommerce.com/stores/' . $hash . '/v2/hooks', json_encode(array(
    'scope'=>'store/order/created', 
    'destination'=>'https://bigcommerce.example.com/order' 
))); 

Dostałem odpowiedź, jak następuje:

stdClass Object 
(
    [id] => 568 
    [client_id] => lms4gxejy2xw2bia7w30v3bal1sz5yz 
    [store_hash] => xxxxxx 
    [scope] => store/order/created 
    [destination] => https://bigcommerce.example.com/order 
    [headers] => 
    [is_active] => 1 
    [created_at] => 1403762563 
    [updated_at] => 1403762563 
) 

Jednak nigdy nie miałem żadnych zwrotnych do https://bigcommerce.example.com/order z Bigcommerce ilekroć zamówienie zostanie złożone. Witryna ma ważny SSL. Jakieś pomysły?

+0

Po pierwsze, czy możesz wyjaśnić, czy zmieniłeś miejsce docelowe z oryginalnego kodu na to, co tutaj zamieściłeś? – developerscott

+0

Tak, zmieniłem problem dotyczący miejsca docelowego z powodu prywatności. –

+2

To samo tutaj. Korzystając z protokołu OAuth, hak został pomyślnie utworzony i aktywny, prawidłowy certyfikat ssl, ale bez wywołań zwrotnych. Wydaje się, że jest to częsty problem. – oumlaote

Odpowiedz

1

ClientID & ClientSecret?

Zakładam, że używasz standardowego (obecnie starego) uwierzytelnienia i nie korzystasz z protokołu OAuth do integracji? OAuth jest wymagany dla webhooków (zobacz dokumentację).

Wiem, że masz HTTPS, ale potrzebujesz również certyfikatu z zaufanego CA. (Wspomniano tylko o tym, że jest to zwykle problem)

+0

Edytowałem mój wpis. Jest to token z tokenem. Webhook jest tworzony z powodzeniem z wygenerowanym prawidłowym identyfikatorem (zobacz odpowiedź, którą otrzymałem). –

+1

HTTPS jest również zaufanym ośrodkiem CA. Jednak nie widzę żadnych wywołań zwrotnych od BigCommerce w moim dzienniku aplikacji ani w dzienniku Apache. –

+0

Jednak nie używasz protokołu OAuth? Jest to wymagane, nie można używać podstawowego uwierzytelniania. Zobacz dokumentację tutaj: https://developer.bigcommerce.com/api/webhooks-getting-started stwierdza: "Zanim Twoja aplikacja może utworzyć webhook, potrzebujesz tokenu dostępu OAuth dla każdego sklepu, w którym chcesz zarejestrować haki." –