尝试使用其余api向Magento添加产品时,返回获得401状态并显示"oauth_problem = nonce_used"消息.奇怪的是,这些产品仍然是进口的,但它真的让我失望,因为我没有得到更新股票信息的产品ID.
Magento安装是全新的(criticalwebhost安装程序)1.7.0.2,我正在使用的代码几乎是从magento站点复制和粘贴的...
$callbackUrl = '****';
$temporaryCredentialsRequestUrl = "*****/oauth/initiate?oauth_callback=".urlencode($callbackUrl);
$adminAuthorizationUrl = '*****/admin/oauth_authorize';
$accessTokenRequestUrl = '*****/oauth/token';
$apiUrl = '*****/api/rest';
$consumerKey = '*****';
$consumerSecret = '******';
try
{
$authType = ($_SESSION['state'] == 2) ? OAUTH_AUTH_TYPE_AUTHORIZATION : OAUTH_AUTH_TYPE_URI;
$oauthClient = new OAuth($consumerKey, $consumerSecret, OAUTH_SIG_METHOD_HMACSHA1, $authType);
$oauthClient->enableDebug();
if(!isset($_GET['oauth_token']) && !$_SESSION['state'])
{
$requestToken = $oauthClient->getRequestToken($temporaryCredentialsRequestUrl);
$_SESSION['secret'] = $requestToken['oauth_token_secret'];
$_SESSION['state'] = 1;
header('Location: '.$adminAuthorizationUrl.'?oauth_token='.$requestToken['oauth_token']);
exit;
} else if($_SESSION['state'] == 1)
{
$oauthClient->setToken($_GET['oauth_token'], $_SESSION['secret']);
$accessToken = $oauthClient->getAccessToken($accessTokenRequestUrl);
$_SESSION['state'] = 2;
$_SESSION['token'] = $accessToken['oauth_token'];
$_SESSION['secret'] = $accessToken['oauth_token_secret']; …Run Code Online (Sandbox Code Playgroud) 像这样将 Request 对象注入控制器方法有什么好处:
use Request;
class WidgetController
{
public function create(Request $request)
{
$name = $request->input('name');
}
}
Run Code Online (Sandbox Code Playgroud)
与消除 use 语句和对象注入并简单地使用 helper 相比:
class WidgetController
{
public function create()
{
$name = request('name');
}
}
Run Code Online (Sandbox Code Playgroud) 我已经安装了Laravel Horizon来管理队列,并且在发布的配置中有以下设置:
'local' => [
'supervisor-1' => [
'connection' => 'redis',
'queue' => ['default'],
'balance' => 'simple',
'processes' => 3,
'tries' => 3,
],
],
Run Code Online (Sandbox Code Playgroud)
在processes设置中:
以下是转储的集合:
//$collOne
Illuminate\Database\Eloquent\Collection {#3386
#items: array:6 [
4807 => "{"color_id":7,"size_id":4,"pack_id":null}"
4808 => "{"color_id":7,"size_id":2,"pack_id":null}"
4809 => "{"color_id":7,"size_id":6,"pack_id":null}"
4840 => "{"color_id":44,"size_id":4,"pack_id":null}"
4841 => "{"color_id":44,"size_id":6,"pack_id":null}"
4842 => "{"color_id":44,"size_id":2,"pack_id":null}"
]
}
//$collTwo
Illuminate\Database\Eloquent\Collection {#3403
#items: array:5 [
430 => "{"color_id":7,"size_id":4,"pack_id":null}"
431 => "{"color_id":7,"size_id":2,"pack_id":null}"
433 => "{"color_id":44,"size_id":4,"pack_id":null}"
434 => "{"color_id":44,"size_id":6,"pack_id":null}"
435 => "{"color_id":44,"size_id":2,"pack_id":null}"
]
}
Run Code Online (Sandbox Code Playgroud)
这是错误:
{
"message": "Call to a member function getKey() on string",
"exception": "Symfony\\Component\\Debug\\Exception\\FatalThrowableError",
"file": "[obfuscated]/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Collection.php",
"line": 281,
"trace": [
{
"file": "[obfuscated].php",
"line": 174,
"function": "diff",
"class": "Illuminate\\Database\\Eloquent\\Collection",
"type": "->" …Run Code Online (Sandbox Code Playgroud) 我只是想知道谁能一步一步解释这个解决方案的算法。我不知道 hashmap 是如何工作的。你能不能给出一个使用哈希图的基本例子来让我理解这个算法。谢谢!
var twoSum = function(nums, target) {
let hash = {};
for(let i = 0; i < nums.length; i++) {
const n = nums[i];
if(hash[target - n] !== undefined) {
return [hash[target - n], i];
}
hash[n] = i;
}
return [];
}
Run Code Online (Sandbox Code Playgroud) laravel ×3
laravel-5 ×2
php ×2
algorithm ×1
api ×1
hashmap ×1
javascript ×1
laravel-5.6 ×1
laravel-5.7 ×1
magento ×1
oauth ×1
rest ×1