在这种情况下如何实现Provider.Credentialsfor呢?[...nextauth].js
流程“图”\nNext request ---> Next API (with Next-Auth) ---> Rails API (returning Token)
目前我有这些options:
providers: [\n CredentialsProvider({\n name: \'Email\',\n credentials: {\n email: { label: "Email", type: "email", placeholder: "meine.email@domain.com" },\n password: { label: "Passwort", type: "password" }\n },\n async authorize(credentials) {\n\n // The \'url\' is pointing to a Rails API endpoint which returns …Run Code Online (Sandbox Code Playgroud) 我通过omniauth从facebook获得一个嵌套数组,并想检查它是否为空?/ nil?/ exists?依赖行看起来像:
unless omniauth['extra']['raw_info']['location']['name'].nil?
Run Code Online (Sandbox Code Playgroud)
这应该检查数组的这一部分是空的还是存在的.
但总是抛出这个错误:
undefined method `[]' for nil:NilClass
Run Code Online (Sandbox Code Playgroud)
我检查数组错了吗?
我用"has_key""nil尝试了吗?" "空的?" "存在?" "空白?"
但这些都没有!
请帮帮我,非常感谢!
Stripe API 相当强大。我发现,由于向后兼容性,存在一些网络钩子(即:计划、收费..)
\n我的意图很“简单”:
\n我的应用程序应该允许用户在成功支付订阅或产品费用后执行某些操作。我销售的有些东西是订阅,有些是“一次性”付款。
\n我不知道应该使用哪些 webhook 并且不会错过任何付款。
\n有:
\n当然还有一些支付失败时的回调:
\n我目前的假设是
\n可能是“正确的”钩子
\n我的第二个假设是
\n我的方向正确吗?
\n编辑:
\n我添加Webhooks的内容:
\n| 网络钩子 … |
|---|
我可以使用THIN
bundle exec thin start --ssl --ssl-verify --ssl-key-file /private/etc/apache2/ssl/server.key --ssl-cert-file /private/etc/apache2/ssl/server.crt
Run Code Online (Sandbox Code Playgroud)
它完美地在控制台/终端中工作
但是当我尝试在"运行/调试配置" - >"编辑脚本参数"下将这些选项附加到rubymine中时,我得到:
/Users/jan/.rbenv/versions/1.9.3-p392/bin/ruby -e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift) /Users/jan/RubymineProjects/myapp/script/rails server thin -b 0.0.0.0 -p 3000 -e development --ssl-verify --ssl-key-file /private/etc/apache2/ssl/server.key --ssl-cert-file /private/etc/apache2/ssl/server.crt
/Users/jan/.gem/ruby/1.9.1/gems/railties-3.2.13/lib/rails/commands/server.rb:33:in `parse!': invalid option: --ssl-verify (OptionParser::InvalidOption)
from /Users/jan/.gem/ruby/1.9.1/gems/rack-1.4.5/lib/rack/server.rb:283:in `parse_options'
from /Users/jan/.gem/ruby/1.9.1/gems/rack-1.4.5/lib/rack/server.rb:180:in `options'
from /Users/jan/.gem/ruby/1.9.1/gems/railties-3.2.13/lib/rails/commands/server.rb:54:in `set_environment'
from /Users/jan/.gem/ruby/1.9.1/gems/railties-3.2.13/lib/rails/commands/server.rb:42:in `initialize'
from /Users/jan/.gem/ruby/1.9.1/gems/railties-3.2.13/lib/rails/commands.rb:50:in `new'
from /Users/jan/.gem/ruby/1.9.1/gems/railties-3.2.13/lib/rails/commands.rb:50:in `<top (required)>'
from /Users/jan/RubymineProjects/myapp/script/rails:6:in `require'
from /Users/jan/RubymineProjects/myapp/script/rails:6:in `<top (required)>'
from -e:1:in `load'
from -e:1:in `<main>'
Run Code Online (Sandbox Code Playgroud)
完成退出代码1的流程任何人都可以帮助我们/我吗?
非常感谢!
在探索Kubernetes模板的yaml定义时,我偶然发现了大小的不同定义。首先,我认为这与apiVersions有关,但它们是相同的。那有什么区别呢?两者相同时哪个正确?
storage: 5G 和 storage: 5Gi
volumeClaimTemplates:
- metadata:
name: mongo-persistent-storage
spec:
resources:
requests:
storage: 2Gi
Run Code Online (Sandbox Code Playgroud)
详细请看这里:https : //github.com/cvallance/mongo-k8s-sidecar/blob/master/example/StatefulSet/mongo-statefulset.yaml
还有这个:
volumeClaimTemplates:
- metadata:
name: mongo-persistent-storage
spec:
resources:
requests:
storage: 5G
Run Code Online (Sandbox Code Playgroud)
在这里详细:https : //github.com/openebs/openebs/blob/master/k8s/demo/mongodb/mongo-statefulset.yml
我正在尝试设置入口负载平衡器。基本上,我有一个具有多个路径的后端服务。
假设我的后端 NodePort 服务名称是 hello-app。与此服务关联的 pod 公开多个路径,如 /foo 和 /bar。下面是例子
NodePort 服务和相关部署
apiVersion: v1
kind: Service
metadata:
name: hello-app
spec:
selector:
app: hello-app
type: NodePort
ports:
- protocol: "TCP"
port: 7799
targetPort: 7799
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: hello-app
labels:
app: hello-app
spec:
replicas: 1
selector:
matchLabels:
app: hello-app
template:
metadata:
labels:
app: hello-app
spec:
containers:
- name: hello-app
image: us.gcr.io/hello-app:latest
Run Code Online (Sandbox Code Playgroud)
现在提出如下请求,我面临 404 错误。
http://{ingress-address:port}/foo
http://{ingress-address:port}/bar
Run Code Online (Sandbox Code Playgroud)
我也尝试过以下入口配置,但在这两种情况下都没有帮助。
入口配置 1
http://{ingress-address:port}/foo
http://{ingress-address:port}/bar
Run Code Online (Sandbox Code Playgroud)
入口配置 2
apiVersion: extensions/v1beta1
kind: Ingress
metadata: …Run Code Online (Sandbox Code Playgroud) 我有一个 NextJS“^11.1.2”应用程序,它在 Dockerfile 中构建并通过 CI/CD 部署到生产环境。但我的process.env变量没有渲染
我的客户端代码中有这个,应该在运行时呈现:
const PublicApiUrl = process.env.NEXT_PUBLIC_API_URL;
在我的(Gitlab)CI/CD Pipeline中,我还通过 AUTO_DEVOPS_BUILD_IMAGE_EXTRA_ARGS 添加了一些--build-args, 以及:ENVARG
AUTO_DEVOPS_BUILD_IMAGE_EXTRA_ARGS --build-arg=NEXT_PUBLIC_API_URL=https://my.api.com --build-arg=NEXT_PUBLIC_API_URL=https://my.api.com --build-arg=NEXT_PUBLIC_BUILDER_KEY=XXXXXX
NEXT_PUBLIC_API_URL=https://my.api.com
API_URL=https://my.api.com
Run Code Online (Sandbox Code Playgroud)
Dockerfile
ARG API_URL
ENV API_URL=$API_URL
ARG NEXT_PUBLIC_API_URL
ENV NEXT_PUBLIC_API_URL=$NEXT_PUBLIC_API_URL
ARG NEXT_PUBLIC_BUILDER_KEY
ENV NEXT_PUBLIC_BUILDER_KEY=$NEXT_PUBLIC_BUILDER_KEY
RUN npm run build # which resolves in "build": "next build"
Run Code Online (Sandbox Code Playgroud)
下面的值肯定是被拾取的(我做了一个RUN env,可以看到变量在那里)。
这是我configMap在 Kubernetes 中将文件安装.env.local到容器中的情况:
ARG API_URL
ENV API_URL=$API_URL
ARG NEXT_PUBLIC_API_URL
ENV NEXT_PUBLIC_API_URL=$NEXT_PUBLIC_API_URL
ARG NEXT_PUBLIC_BUILDER_KEY
ENV NEXT_PUBLIC_BUILDER_KEY=$NEXT_PUBLIC_BUILDER_KEY
RUN npm …Run Code Online (Sandbox Code Playgroud) 当用户尝试访问未经身份验证的页面时,我将用户重定向到登录页面。
然后我想向他们展示一条消息。
但我无法在重定向中传递参数。导致问题的原因是什么以及如何正确解决?
// PAGE NEEDS AUTH / REDIRECT TO LOGIN WITH MESSAGE
// application
import { GetServerSideProps } from 'next';
import SitePageProducts from '../../components/site/SitePageProducts';
import axios from 'axios';
import { getSession } from 'next-auth/react';
import url from '../../services/url';
import { ProductFields } from '../../lib/ebTypes';
function Page() {
return <SitePageProducts />;
}
export default Page;
export const getServerSideProps: GetServerSideProps = async (context) => {
const session = await getSession(context)
if (session) {
const products = await axios.get(`${process.env.NEXT_PUBLIC_API_URL}/products`, {
}).then(res => …Run Code Online (Sandbox Code Playgroud) 我有两个数据库,一个是国家和分区(州/地区),另一个是城市.
问题是,他们使用不同的规范.
国家/地区分部提供:ISO 3166-2代码(数字和字符)和城市细分使用FIPS(仅限数字).
我在哪里或如何将它们匹配在一起?
有没有"Mappers?
德国示例:
细分:勃兰登堡
示例数据集:
国家/细分:
{"alpha2"=>"DE",
"alpha3"=>"DEU",
"name"=>"Germany",
"names"=>["Germany", "Deutschland", "Allemagne", "Alemania", "???", "Duitsland"],
"number"=>"276",
"subdivisions" => {
"BB"=>{"name"=>"Brandenburg", "names"=>["Brandenbourg", "Brandenburgo"]},
"BE"=>{"name"=>"Berlin", "names"=>["Berlín"]},
"BW"=>{"name"=>"Baden-Württemberg", "names"=>["Baden-Württemberg", "Baden-Wurttemberg"]},
"BY"=>{"name"=>"Bayern", "names"=>["Bavière", "Bayern", "Bavaria"]},
"HB"=>{"name"=>"Bremen", "names"=>["Brème"]},
"HE"=>{"name"=>"Hessen", "names"=>["Hessen", "Hesse"]},
"HH"=>{"name"=>"Hamburg", "names"=>["Amburgo", "Hambourg", "Hamburgo"]},
"MV"=>{"name"=>"Mecklenburg-Vorpommern", "names"=>["Mecklenburg-Vorpommern"]},
"NI"=>{"name"=>"Niedersachsen", "names"=>["Niedersachsen"]},
"NW"=>{"name"=>"Nordrhein-Westfalen", "names"=>["Nordrhein-Westfalen", "Rhénanie-Westphalie"]},
"RP"=>{"name"=>"Rheinland-Pfalz", "names"=>["Rheinland-Pfalz", "Rhénanie-Palatinat"]},
"SH"=>{"name"=>"Schleswig-Holstein", "names"=>"Schleswig-Holstein"},
"SL"=>{"name"=>"Saarland", "names"=>"Saarland"},
"SN"=>{"name"=>"Sachsen", "names"=>["Sachsen"]},
"ST"=>{"name"=>"Sachsen-Anhalt", "names"=>"Sachsen-Anhalt"},
"TH"=>{"name"=>"Thüringen", "names"=>["Thüringen", "Thuringen"]}}}
{"alpha2"=>"AT",
"alpha3"=>"AUT",
"name"=>"Austria",
"names"=>["Austria", "Österreich", …Run Code Online (Sandbox Code Playgroud) 我有一个 js 对象数组,如下所示:
var objArr = [
{"Country": "US", "City": "MyCity1", "2017-07-12": "1", "2017-07-13": "2"},
{"Country": "US", "City": "MyCity2", "2017-07-12": "2", "2017-07-13": "2"},
{"Country": "CN", "City": "MyCity1", "2017-07-12": "5", "2017-07-13": "7"},
{"Country": "CN", "City": "MyCity2", "2017-07-12": "5", "2017-07-13": "7"}
]
Run Code Online (Sandbox Code Playgroud)
我想创建一个新数组,其中国家/地区是唯一的,但日期也应该相加。
{"Country": "US", "2017-07-12": "3", "2017-07-13": "4"},
{"Country": "CN", "2017-07-12": "10", "2017-07-13": "14"}
^^^^ ^^^^ ^^^^
Run Code Online (Sandbox Code Playgroud)
我很难理解它。我是否必须先过滤,以某种方式减少它,重新映射它,......我不知道从哪里开始?任何帮助将不胜感激,谢谢!
ruby ×3
kubernetes ×2
next.js ×2
arrays ×1
dockerfile ×1
ecmascript-6 ×1
filter ×1
geo ×1
gitlab-ci ×1
javascript ×1
jwt ×1
next-auth ×1
object ×1
openssl ×1
region ×1
rubymine ×1
thin ×1