小编Moo*_*ose的帖子

具有公共访问权限的Web应用程序的Google OAuth 2.0刷新令牌

我收到以下错误:

OAuth 2.0访问令牌已过期,并且刷新令牌不可用.对于自动批准的响应,不会返回刷新令牌

我有一个只有我的服务器才能访问的Web应用程序,初始身份验证工作正常,但一小时后,弹出上述错误消息.我的脚本看起来像这样:

require_once 'Google/Client.php';     
require_once 'Google/Service/Analytics.php';       
session_start();

$client = new Google_Client();
$client->setApplicationName("Client_Library_Examples");
$client->setDeveloperKey("{MY_API_KEY}");
$client->setClientId('{MY_CLIENT_ID}.apps.googleusercontent.com');
$client->setClientSecret('{MY_KEY}');
$client->setRedirectUri('{MY_REDIRECT_URI}');
$client->setScopes(array('https://www.googleapis.com/auth/gmail.readonly'));

if (isset($_GET['code'])) {
    $client->authenticate($_GET['code']);  
    $_SESSION['token'] = $client->getAccessToken();
    $redirect = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'];
    header('Location: ' . filter_var($redirect, FILTER_SANITIZE_URL));
}

if (!$client->getAccessToken() && !isset($_SESSION['token'])) {
    $authUrl = $client->createAuthUrl();
    print "<a class='login' href='$authUrl'>Connect Me!</a>";
}
Run Code Online (Sandbox Code Playgroud)

如何为此设置刷新令牌?

编辑1:我也尝试过使用服务帐户.我按照GitHub上提供的文档:

https://github.com/google/google-api-php-client/blob/master/examples/service-account.php

我的脚本看起来像这样:

session_start();
include_once "templates/base.php";
require_once 'Google/Client.php';
require_once 'Google/Service/Gmail.php';
$client_id = '{MY_CLIENT_ID}.apps.googleusercontent.com'; 
$service_account_name = '{MY_EMAIL_ADDRESS}@developer.gserviceaccount.com ';
$key_file_location = 'Google/{MY_KEY_FILE}.p12';
echo pageHeader("Service Account Access");
    if …
Run Code Online (Sandbox Code Playgroud)

php gmail google-oauth google-api-php-client

6
推荐指数
1
解决办法
7917
查看次数

识别直线中的颜色十六进制代码

如何以编程方式确定单个光谱线中颜色的 html 颜色十六进制代码?我肯定使用了错误的术语,我只是不确定如何表达它。这张图应该可以清晰地看出:

色线

请注意顶部矩形中的光标如何始终处于同一位置。只是第一个栏中的光标移动到不同的颜色段,从而生成下面可见的十六进制代码。

是否可以通过编程方式生成这些?

html colors

5
推荐指数
1
解决办法
178
查看次数

从字符串中删除 ASCII 符号

我需要摆脱一个看起来与文本中的男性 ascii 符号完全相同的字符- ?。但是,它不是标准的 ASCII 符号,因为如果我将它粘贴到 StackExchange 上,它会显示如下:

在此处输入图片说明

如何替换字符串中的字符?我试过将字符直接粘贴到 Eclipse 中,但不幸的是这不起作用(粘贴到 Eclipse 时它看起来与上面的图像完全一样)。但是在使用搜索功能时,您可以在 Notepad++ 中看到该符号:

在此处输入图片说明

但是,当内联显示时,它看起来像这样:

在此处输入图片说明

编辑: @Greg-449 的回答,我已经尝试过了,但该字符仍保留在字符串中。我不认为这是默认字符。我会告诉你在哪里可以从网站上引用它:

曜越:机箱 > Versa > Versa H21

如果您突出显示规格并选择,View selection source您会注意到它开始出现在第 63 行(optional).

如何从字符串中删除此符号?如果可能的话,有没有办法排除一般的奇怪符号?

编辑 2。在尝试了两个建议的答案后,我仍然无法将它从字符串中删除。我现在看到我可能遗漏的一个关键部分是文本从网站复制到 Microsoft Excel,然后复制到 Java Applet (TextArea),从中进行分析和操作。即使在文本区域中不可见,在操作后复制回 Excel 时它仍然保留在那里。

测试的代码是:

String descript = textArea.getText();
descript = descript.replace('\u000B', ' ');
textArea.setText(descript);
Run Code Online (Sandbox Code Playgroud)

将此文本带回 Excel 时,该字符将保留。

java eclipse ascii

2
推荐指数
1
解决办法
3967
查看次数

如何使用预先应用的过滤器链接到自定义网格?

我正在开发一个使用自定义模型创建网格的模块.

该模型有一个字段'username',我想生成一个到网格的超链接,其中预定义的用户名被过滤,即仅显示用户名为Matt的条目.

我想不出一个例子,核心开发人员在这些行中做了一些事情,并在用户名栏中应用过滤器后查看管理页面上的URL ,我只看到会话术语:

/index.php/admin/bookouts/index/key/4ed130b406cd65dc43dd190bb5ae35ec/filter/Ym9va291dF9kYXRlJTVCZnJvbSU1RD0wNCUyRjA5JTJGMjAxMyZib29rb3V0X2RhdGUlNUJ0byU1RD0wNCUyRjA5JTJGMjAxMyZib29rb3V0X2RhdGUlNUJsb2NhbGUlNUQ9ZW5fR0I=/form_key/BQUuqBB4miqqa0Hu/

将不胜感激任何意见.

magento magento-1.7

1
推荐指数
1
解决办法
1472
查看次数