mirror of
https://github.com/plutov/paypal.git
synced 2025-01-23 10:21:03 +01:00
Potential fix for Issue 230
This commit is contained in:
parent
1a2c109908
commit
d815f6d8d9
|
@ -4,6 +4,7 @@ import (
|
||||||
"bytes"
|
"bytes"
|
||||||
"context"
|
"context"
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
"net/http"
|
"net/http"
|
||||||
|
@ -89,7 +90,7 @@ func (c *Client) VerifyWebhookSignature(ctx context.Context, httpReq *http.Reque
|
||||||
TransmissionSig string `json:"transmission_sig,omitempty"`
|
TransmissionSig string `json:"transmission_sig,omitempty"`
|
||||||
TransmissionTime string `json:"transmission_time,omitempty"`
|
TransmissionTime string `json:"transmission_time,omitempty"`
|
||||||
WebhookID string `json:"webhook_id,omitempty"`
|
WebhookID string `json:"webhook_id,omitempty"`
|
||||||
Event json.RawMessage `json:"webhook_event"`
|
Event json.RawMessage `json:"webhook_event,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// Read the content
|
// Read the content
|
||||||
|
@ -97,6 +98,9 @@ func (c *Client) VerifyWebhookSignature(ctx context.Context, httpReq *http.Reque
|
||||||
if httpReq.Body != nil {
|
if httpReq.Body != nil {
|
||||||
bodyBytes, _ = ioutil.ReadAll(httpReq.Body)
|
bodyBytes, _ = ioutil.ReadAll(httpReq.Body)
|
||||||
}
|
}
|
||||||
|
else{
|
||||||
|
return nil, errors.New("Cannot verify webhook for HTTP Request with empty body.")
|
||||||
|
}
|
||||||
// Restore the io.ReadCloser to its original state
|
// Restore the io.ReadCloser to its original state
|
||||||
httpReq.Body = ioutil.NopCloser(bytes.NewBuffer(bodyBytes))
|
httpReq.Body = ioutil.NopCloser(bytes.NewBuffer(bodyBytes))
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user