小编Pat*_*ick的帖子

使用 Apple = invalid_client 登录

我面临一个非常糟糕的问题,因为我阅读了很多指南和教程,但没有任何效果。

结果总是一样的: {"error":"invalid_client"}

我得到了代码、identityToken 和我需要的一切——除了对https://appleid.apple.com/auth/token的调用——因为 invalid_client。

这是我获取代码的网址。

https://appleid.apple.com/auth/authorize?response_type=code&client_id=org.example.service&redirect_uri=https%3A%2F%2Fexample.org

那么我就有了默认的工作流程。接受/登录后,我将被重定向到我的页面。

https://example.org/?code=a277243e2ec324fb09ba1c3333a8e6576.0.abcde.u4xiTDP2qHXoNEaxrcrIGx

(当我使用 JavaScript API 时,我将获得其他信息,如状态、代码和 id_token。我也已经在那里使用“代码”进行了尝试。)

回到主函数。

这是我对苹果的要求。

'client_id' => 'org.example.service',  
'client_secret' => JWT-Data encoded (OPENSSL_ALGO_SHA256) see below  
'grant_type' => 'authorization_code',  
'code' => 'a277243e2ec324fb09ba1c3333a8e6576.0.abcde.u4xiTDP2qHXoNEaxrcrIGx'  
Run Code Online (Sandbox Code Playgroud)

JWT 标头:

{
  "alg": "ES256",
  "kid": "1ABC2345DE"
}  
Run Code Online (Sandbox Code Playgroud)

JWT 有效载荷:

{
  "iss": "1A234BCD56",
  "iat": 1571269964,
  "exp": 1571273564,
  "aud": "https://appleid.apple.com",
  "sub": "org.example.service"
}
Run Code Online (Sandbox Code Playgroud)

回复:

{  
  "error": "invalid_client"  
}  
Run Code Online (Sandbox Code Playgroud)

世界上无用的错误信息。

我不知道为什么客户端应该是无效的。

我在https://developer.apple.com/account/resources/authkeys/list 中有一个密钥,下载的文件名为 AuthKey_1ABC2345DE.p8。(意味着 1ABC2345DE 是我的密钥 ID)

然后我有一个带有标识符“org.example”的本机iOS应用程序和一个带有标识符“org.example.service”的服务。

它不能同时使用 id 和混合不同的东西。

没有。无效客户端。

有人可以帮我吗?我在这里坐了几个小时,只得到 invalid_client

我的测试页面: …

php ios jwt apple-sign-in

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

简单的测试但无效的定位器:-(

我有这个测试:

// import {by, element, browser} from "protractor";
describe('intro', () => {
  beforeEach(() => {
    browser.get('');
  });

it('should have multiple pages', () => {
    let buttonOnward = element(by.linkText('Continue'));
    expect(element.all(buttonOnward).count()).toBe(1);
  });
});
Run Code Online (Sandbox Code Playgroud)

得到这个结果.

1) intro should have multiple pages
  Message:
    Failed: Invalid locator
  Stack:
    TypeError: Invalid locator
        at Object.check [as checkedLocator] (C:\Users\Patrick\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\by.js:267:9)
        at WebDriver.findElements (C:\Users\Patrick\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\webdriver.js:919:18)
        at C:\Users\Patrick\AppData\Roaming\npm\node_modules\protractor\built\element.js:161:44
        at ManagedPromise.invokeCallback_ (C:\Users\Patrick\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\promise.js:1379:14)
        at TaskQueue.execute_ (C:\Users\Patrick\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\promise.js:2913:14)
        at TaskQueue.executeNext_ (C:\Users\Patrick\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\promise.js:2896:21)
        at asyncRun (C:\Users\Patrick\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\promise.js:2775:27)
        at C:\Users\Patrick\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\promise.js:639:7
        at process._tickCallback (internal/process/next_tick.js:103:7)
    From: Task: Run it("should have multiple pages") …
Run Code Online (Sandbox Code Playgroud)

javascript selenium node.js typescript protractor

5
推荐指数
2
解决办法
6566
查看次数

AWS CodeDeploy无法部署Lambda函数

我有一个简单的AWS CodePipeline,只需几个步骤。

  1. AWS CodeCommit(提供输出“ SourceCode”)
  2. AWS CodeBuild(输入“ SourceCode”,npm安装,npm运行脚本构建,输出“ FinalCode”)
  3. AWS CodeDeploy(输入“ FinalCode”,部署到Lambda函数)

实际上,从几个小时以来,我就尝试使此F *** CodeDeploy工作。这是不可能的。我不敢相信-.-

因此,我们可以看一下AWS CodeDeploy步骤。错误一定在那里。我尝试了CodeBuild的不同方案。输出带有artifacts.zip和appspecs.yml等。


CodeDeploy说:

Action execution failed
BundleType must be either YAML or JSON
Run Code Online (Sandbox Code Playgroud)

由CodePipeline触发时。

我从CodePipeline-S3-Bucket下载文件,这是CodeDeploy的输入。它包含所有需要的文件。

node_modules,appspec.yml和index.js

我不知道如何告诉管道使用此appspec.yml。

有趣的是,如果我手动部署它,它可以工作。因此,CodeDeploy无法找到我认为的appspec.yml。

如果手动添加appspec.yml的工作场景示例

在这里您可以看到。

工作结果示例

但是,如果我考虑一下,这没有任何意义。因为在此应用程序规范编辑器中,我无法指定要部署的ZIP存档的路径。

有人知道如何完成最后一步吗?

我不敢相信它是如此困难:-D我能够非常轻松地设置CodeCommit。使用buildspec.yml,CodeBuild也非常容易。现在由于忽略了appspec.yml或类似的内容,我无法部署...

amazon-web-services aws-code-deploy aws-lambda aws-codecommit aws-codebuild

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

FosUserBundle - 使用户名可以为空

Commuity,

我使用FosUserBundle,我的用户名有问题.

在我的页面上,您只需要一封电子邮件和一个密码.=>你可以使用用户名!(因为那样,我无法使用setUsername($ email)^^覆盖实体中的setEmail()函数

如果我在我的配置中使用它,我会收到以下错误.

fos_user:
    registration:
        form:
            validation_groups: [AppRegistration]
Run Code Online (Sandbox Code Playgroud)

错误:

SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'username' cannot be null 
Run Code Online (Sandbox Code Playgroud)

我能做什么?

先感谢您!

null entity symfony-forms symfony fosuserbundle

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

C#Math.Ceiling将事件加倍...(500到501)(公式)

为什么围绕C#这个计算?

500 - > 501

MessageBox.Show(Math.Ceiling(1 / (4 * 1 - 4 * 0.9) * 200).ToString());
Run Code Online (Sandbox Code Playgroud)

回报.

---------------------------

---------------------------
501
---------------------------
OK   
---------------------------
Run Code Online (Sandbox Code Playgroud)

我不知道为什么.

Excel也不会这样做.

Excel不会使公式更圆.

我需要公式的天花板功能,它返回500而不是501.

我可以用它代替.但我知道是否有另一种解决方案以及为什么C#会这样做.

MessageBox.Show(Math.Ceiling(Math.Floor((1 / (4 * 1 - 4 * 0.9) * 200) * 100) / 100).ToString());
Run Code Online (Sandbox Code Playgroud)

c# math double excel ceil

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