PI黑客马拉松近期工作汇报

PiNetwork
• 阅读 1404

PI黑客马拉松近期工作汇报 嘿,PI开拓者!下面,Pi 核心团队将发布我们#buildpi2gether黑客马拉松研讨会视频的总结,介绍如何利用不同的 Pi 资源来构建您的项目。让我们知道,如果有什么我们可以做的,使我们的内容更容易访问! 黑客马拉松工作坊视频 1

- 标题: Pi 开发人员门户介绍

https://www.bilibili.com/video/BV1tw41197Vp/?aid=334292431&cid=375588608&page=1 视频脚本: 大家好,我是PI核心团队的.莱里亚。在介绍视频中,我们将讨论和发现今年 7月发布的新的 Pi 开发人员门户。除了头脑风暴,开发人员门户旨在成为您与 Pi Network 开发之旅的主要伴侣。 从构想到发布,所有步骤都可以从这两个公用设施中管理。头脑风暴主要用于创意、资金和团队聚会,而开发人员门户则面向在 PI 网络平台中管理您的应用程序。 在此视频中,我们将主要关注 Pi 开发人员门户及其功能。 1-创建应用程序 1.A-基本领域 当您首次打开开发人员门户时,您将看到此实用程序呈现。您可以单击"新应用"按钮以启动创建过程。从这里,您现在应该可以看到应用程序创建表单。应用程序名称和描述是相当不言自明的。如果您有一个与应用关联的"头脑风暴"项目,则应使用同一名称。在表格的末尾,您将被要求提供您的 Github 和Discord用户名。我们可能想要创建一个关于Discord和 github 的开发人员组,因此我们现在将开始收集用户名。这两个字段是 100% 可选的。将来,我们希望在头脑风暴和开发人员门户之间架起一座桥梁,使整个应用生命周期无缝连接。 1.B-由PI核心团队自托管/托管 在表格中间,您将看到一个问题,询问您是否希望应用程序由 Pi 团队托管或自我托管。 1.B.1-自我托管 自托管意味着您是处理生产应用程序的人。您可以拥有自己的基础设施,但您是负责缩放和可用性的人。如果您选择此选项,将要求您使用应用程序的前端 URL。正如在以前的视频中解释的那样,Pi 公用事业实际上是在 iframe 中运行的网站,因此您必须为 Pi 浏览器提供此 Url 才能显示您的应用。 1.B.1 - 由 Pi 核心团队主持 另一方面,由Pi核心团队托管意味着我们正在处理您的应用程序——没有基础设施管理,没有可用性问题,您只需处理代码即可。虽然第一个选项可供每个人使用,但第二个选项要求您通过头脑风暴开发人员测试 众所周知,Pi 核心团队目前正在组织黑客马拉松。加入活动并说您是开发人员后,您将被发送到技术测试。当头脑风暴和开发人员门户连接时,通过技术测试将自动为您打开后续步骤。 最后,当您选择此操作而不是前端网址时,将要求您提供 gitlab 用户名。这将对我们很有用,以便为您提供一个 Gitlab 项目,该项目已与我们的部署管道集成。现在,您可以单击提交按钮,然后关注我的下一页。 2-正面验证 如果您选择自己托管应用程序,则需要验证您的域名所有权。这是为了避免开发人员从他们不代表的网站创建应用。例如,您不应能够冒充 wikipedia.com 域名。 为了证明您对域名的所有权,您需要将特定文件放在域的根部。文件的内容必须与灰色框中的文本字段内容相匹配。 完成将具有正确内容的文件放置在域根部后,您可以单击"验证域"按钮。您要么看到带有某些调试信息的错误消息,要么灰色框应消失,域网址旁边应显示绿色复选标记。恭喜您,您的域名所有权现已验证,您可以通过 PI 浏览器在地址栏中键入应用网址来访问您的应用。 3-API键 与 Pi SDK连接PI API, 在那里你可以执行 Https 请求对主PI网络后端。目前,这仅用于处理付款,但将来将添加更多功能,例如从应用程序创建 Pi 聊天上的聊天对话。在页面底部,您可以看到一个名为"API 密钥"的部分。您将需要它作为应用程序开发人员访问PI后端。保证安全!任何有这把钥匙的人都可以假装是你 请注意,访问公共 Pi 区块链不需要任何 API 密钥,您可以使用应用的私人密钥生成交易,并通过任何公共节点(例如您自己的节点、Pi 核心团队的节点之一或运行"区块链 API 服务"的任何其他节点)直接将其提交到区块链中) 3-范围 示波器是一项功能,允许开发人员请求不同级别的访问用户。默认情况下,应用只能访问匿名用户标识符,但如果应用必须知道其用户的用户名(例如在界面中显示),则必须请求"用户名"范围。如果应用打算请求其用户向应用进行 Pi 付款,则必须请求"付款"范围。请求范围对用户可见,因此为了最大限度地增加舒适地安装应用的人数,我们建议只要求应用运行所需的最小示波器数量。您以后总是可以要求更多的示波器。请注意,核心团队目前正在积极开发范围设施。 结论 有了这个新的工具和集思广益的整合,你将能够管理你的应用程序,从想法到它的公开发布。在区块链上创建应用从未像现在这样简单。请随时尝试 SDK,并告诉我们您可以向 Pi 公用事业生态系统添加什么。 Hackathon Workshop video 2

- 标题: pi Sdk 和沙盒介绍

https://www.bilibili.com/video/BV17B4y1K7Re/?aid=589292540&cid=375624624&page=1 视频脚本: 我的名字是客家,在这个视频中,我将介绍如何使用Pi SDK和验证用户,以及如何在沙盒环境中运行您的应用程序用于开发目的。请记住,Pi 应用是加载在环境中的 Web 应用,使它们能够与 Pi 应用平台提供的资源进行交互。为此,您需要在应用中安装一个名为客户端 SDK 的 Javascript。由于 Pi 应用主要是 Web 应用,因此您可以使用沙盒环境在桌面浏览器中调试它们。 我们将使用这个简单的单页应用程序称为Pi在线面包店。它使用创建响应应用初始化,但你仍然可以使用裸骨 HTML 和 javascript 创建演示应用程序。 要使用 Pi SDK,您需要将 SDK 脚本标记添加到前端。然后,您需要调用初始化SDK的初始函数。您需要指定版本以确保与未来的SDK版本兼容。到目前为止, 版本 2.0 是最新的, 所以我们把 2.0 在这里, 沙盒标志是真实的, 我会在一分钟内谈论。此沙盒标志是可选的,允许您配置 SDK 在沙盒中运行。如果您用环境变量控制此变量,这非常方便,但要明确,我在此将其设置为真实。 让我们转到开发人员门户。我假设你已经注册了你的应用程序在门户网站上,因为我在这里。要将应用加载到沙盒中,您需要设置"开发 URL"。现在它说"未配置",所以让我们编辑此。这通常是本地的,带有一个自定义端口,这取决于您的发展环境。在这里,我使用本地热与3003端口。设置开发 URL 后,将生成沙盒 URL。在桌面浏览器中打开此 URL,您将看到此带有授权代码的白色页面。如果您正在运行 Pi 节点,您可能熟悉此过程。打开您的移动应用程序,点击 Pi 公用事业页面底部的授权沙盒链接。您需要键入授权代码并按确认。当您的沙盒环境被授权时,您将在沙盒环境中看到您的应用,这是您之前看到的页面。 现在打开浏览器的下放。这里有一个小上下文选择器。您可以选择本地托家来获取应用的上下文。选择本地主机后,如果您在控制台中键入 Pi,则可以访问它。当然,您会看到一些价值为无效,因为当前用户尚未进行身份验证。 现在,我们可以在沙盒中运行我们的应用程序,让我们看看SDK很快。您将遇到的第一个功能是身份验证功能。它需要一系列称为示波器的字符串,以及一个调用功能,称为"完成付款"。 有两个可用的范围,即用户名和付款。目前,示波器功能仍在进行中。这意味着身份验证功能将考虑当前要求的两个示波器。尽管如此,您应该仅在相关示波器下实现应用。检查我们的SDK参考托管在我们的github存储库上,了解未来的更新。 在完成付款发现功能处理您的应用程序和您正在验证的此用户之间的不完整的付款。当您不提交服务器端完成 API 呼叫时,付款被视为不完整。在此演示应用中,我们建议使用示例,其中付款发送到应用服务器以查找以前的订单并将其标记为已付订单。有关付款的更多详细信息,请点击付款视频。现在,让我们记住,我们需要通过一个回调功能,处理从服务器端不完整的付款。 身份验证功能将返回一个承诺,这看起来像这样。退货值可能会在以后更改,但重要的是您需要确保将其发送到应用服务器并将此信息存储在数据库中。同样重要的是要验证这一点,从您的服务器点击/me端点,因为恶意用户可以假装他们是别人。您可以在我们的Pi平台文档中找到更多关于/me端点的信息。 因此,在此视频中,我们看到了如何使用 SDK、在沙盒中运行您的应用并验证当前用户。在下一个视频中,我将涵盖如何处理付款,这些付款是围绕应用和用户之间的区块链交易的包装。谢谢你的收看。 Hackathon Workshop video 3

标题: Pi 付款介绍

https://www.bilibili.com/video/BV1nL411p7nK/?aid=461867877&cid=375660420&page=1 视频脚本: 欢迎大家回来在上一个视频中,我们看到了如何使用 Pi SDK、在沙盒中运行您的应用并验证用户。在这段视频中,我将引导您完成整个付款流程。我要解释的过程是在一个非常高的水平,但即使这样,你将能够了解你需要做什么来创建付款。如果您想了解更多有关场景背后实际发生的事情,请参阅我们的 Pi 平台文档。现在让我们开始吧。 在整个过程中,基本上有4个当事方参与其中。您的应用程序、应用服务器、Pi服务器和 Pi 区块链。需要记住的最重要的一点是,所有付款状态必须完全同步,以避免任何可能的种族条件。如果出现问题,用户可能会为已经提供给其他人的项目付费,或者用户可能会为项目支付两次费用,因为流程被中断。为了避免此类情况,Pi 核心团队已实施一项协议,作为 Pi SDK 的一部分,您根本不需要担心。 使用 Pi SDK,在 Pi 应用中创建付款非常简单。让我们来看看创建付款功能。它需要2个参数,即支付数据对象和回调功能的对象。付款数据对象由三个项目组成。要支付的金额、用户备忘录和用于自己使用的元数据。如果其中任何一个丢失,您将获得错误。 在准备服务器申请是一个功能,当付款ID准备好时,被称为。使用此功能,您需要将付款 ID 和其他相关数据传递到应用服务器。然后在您的服务器上,您应该为即将购买它的用户保留一个项目,并让 Pi 服务器知道您已准备好继续。换句话说,您需要确保您的服务器通过此功能了解当前付款。 在准备为服务完成是一个功能,在区块链交易已提交给Pi区块链后被调用。您的工作是再次将任何相关数据传递到您的应用服务器。在服务器上,您可以验证付款并交付为用户保留的项目。最后,您应该通过让 Pi 服务器知道您已收到付款并交付了项目来完成付款。其他 2 个功能在加拿大和埃罗尔函数上。正如他们的名字所暗示的,它们是当付款被取消和出现错误时将被调用的功能。 让我们不要忘记我们在上一个视频中看到的"未完成付款"功能。提醒您,此功能负责完成任何不完整的付款。您可能想知道为什么需要实现此功能。付款过程可能会意外中断。用户可能会失去互联网连接,应用程序可能会崩溃或服务器可能不会响应。如果付款过程在用户付款前失败,则可以。用户只需要重新开始该过程。当然,您需要清理服务器上的陈旧订单。但是,如果用户已经支付,突然的过程结束,没有优雅地完成呢?这就是这个功能发挥作用的地方。Pi SDK 将在用户身份验证时检测此类付款,当用户尝试进行新付款时,如果发现付款不完整,它将请求您的应用完成付款。好的,所以我们要在一分钟内实现这些功能。但是还有一步你不能忘记,那就是获得 API 密钥。 假设您已在开发人员门户上注册了应用,如果您尚未注册,请生成 API 密钥。在底部选择您的应用,如果点击"获取 api 键"按钮,则可以创建新密钥。在关闭窗口之前保存密钥。使用此密钥,您可以点击我们的终端并更新付款状态。 我们已返回到演示应用程序,现在我们将实现回调功能。为了时间,我已经准备了代码片段。让我们一起填写。我们现在都知道这是什么了。您想在这里做的是调用您的服务器从您的服务器点击我们的终端。请记住,此斜线批准只是我用作示例的任意路线。再次,要完成付款,您需要致电您的服务器才能达到我们的终点。最后两个功能是供您自己使用。当付款被取消时,在服务器上也将其标记为已取消。也要根据需要处理错误。 现在让我们完成后端。在此演示中,我正在运行节点服务器,但您可以选择您喜欢的任何后端。还要记住,实际实现由您决定。我只是展示了一个粗略的例子来帮助你了解这个过程。首先,让我们看看批准的路线。创建付款时,您需要为用户保留项目,并将付款Id映射到当前订单。然后,请务必点击批准端点批准付款。同样的事情也适用于完整的路线。如果您愿意,您可以验证付款,将项目交付给用户,将订单标记为已支付,并通过点击完整的终点完成付款。我们不应该忘记不完整的路线。处理不完整的付款,并达到完整的终点。虽然我跳过这里,但不要忘了处理取消路线。我们终于准备好创建付款。 现在代码已准备就绪,让我们从一开始就看到流程。我一点击按钮,付款流程就开始了。只有当付款从应用服务器上获得批准时,我才能看到下一页。然后,我可以查看详细信息,如果我认为它是正确的,我将使用我的密码短语签署并将交易提交到 Pi 区块链。现在已提交交易,我们正在等待应用服务器完成付款流程。当应用服务器最终完成付款时,我可以看到此结果,这是演示的结束。谢谢你的收看。

官方地址:https://minepi.com 开发人员的 Pi 应用平台:https://developers.minepi.com/ github:https://github.com/pi-apps/pi-platform-docs medium: https://pinetwork-official.medium.com/ Pi Browser IOS:https://apps.apple.com/us/app/pi-browser/id1560911608 Pi Browser APK: https://play.google.com/store/apps/details?id=pi.browser

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
4个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
PiNetwork PiNetwork
3年前
Pi Network黑客马拉松指南和议程: 6 月 28 日 — — 8 月 10 日
今天,我们开始Pi的第一个黑客马拉松作为我们的开发人员社区的第一个事件。BuildPi2gether黑客马拉松是一个合作活动,先锋和开发人员一起建立Pi应用的未来。活动将于6月28日至8月10日为期7周。要构建的应用分为两类:生态系统应用程序——改善Pi生态系统和功能的应用程序。业务应用——为消费者或商业产品提供服务的应用。奖品:每类奖金总计高达50,00
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Stella981 Stella981
3年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
10个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这
PiNetwork
PiNetwork
Lv1
人间四月芳菲尽,山寺桃花始盛开。
文章
2
粉丝
0
获赞
0