Awight has uploaded a new change for review.
https://gerrit.wikimedia.org/r/286703
Change subject: Support query_string response parsing
......................................................................
Support query_string response parsing
This decodes a URL-encoded and query-string delimited response body.
Change-Id: I448db2cdfbf5d07fab9dcb362d90f518f730600f
---
M gateway_common/gateway.adapter.php
1 file changed, 9 insertions(+), 3 deletions(-)
git pull
ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/DonationInterface
refs/changes/03/286703/1
diff --git a/gateway_common/gateway.adapter.php
b/gateway_common/gateway.adapter.php
index 4454914..8111b78 100644
--- a/gateway_common/gateway.adapter.php
+++ b/gateway_common/gateway.adapter.php
@@ -1443,10 +1443,11 @@
// For anything else, delete all the headers and the blank line
after
$noHeaders = preg_replace( '/^.*?\n\r?\n/ms', '', $rawResponse,
1 );
$this->logger->info( "Raw Response:" . $noHeaders );
- if ( $type === 'json' ) {
+ switch ( $type ) {
+ case 'json':
return json_decode( $noHeaders, true );
- }
- if ( $type === 'delimited' ) {
+
+ case 'delimited':
$delimiter = $this->transaction_option(
'response_delimiter' );
$keys = $this->transaction_option( 'response_keys' );
if ( !$delimiter || !$keys ) {
@@ -1458,6 +1459,11 @@
throw new InvalidArgumentException( 'Wrong
number of values found in delimited response.');
}
return $combined;
+
+ case 'query_string':
+ $parsed = array();
+ parse_str( $noHeaders, $parsed );
+ return $parsed;
}
return $noHeaders;
}
--
To view, visit https://gerrit.wikimedia.org/r/286703
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I448db2cdfbf5d07fab9dcb362d90f518f730600f
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/DonationInterface
Gerrit-Branch: master
Gerrit-Owner: Awight <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits