我想知道如何收集我做过的数学测验的用户分数

时间:2019-05-17 22:35:19

标签: javascript php html

我想从我的GitHub页面(theratcoder.github.io)收集用户的分数。我已经使用以下JS代码(嵌入在我的HTML文档中)来创建测验。

var score = 0;

AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Description: >
  sam-app

  Sample SAM Template for sam-app

# More info about Globals: https://github.com/awslabs/serverless-application-model/blob/master/docs/globals.rst
Globals:
  Function:
    Timeout: 3

Resources:
  HelloWorldFunction:
    Type: AWS::Serverless::Function # More info about Function Resource: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
    Properties:
      CodeUri: hello-world/
      Handler: app.lambdaHandler
      Runtime: nodejs8.10
      Events:
        HelloWorld:
          Type: Api # More info about API Event Source: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#api
          Properties:
            Path: /hello
            Method: post

Outputs:
  # ServerlessRestApi is an implicit API created out of Events key under Serverless::Function
  # Find out more about other implicit resources you can reference within SAM
  # https://github.com/awslabs/serverless-application-model/blob/master/docs/internals/generated_resources.rst#api
  HelloWorldApi:
    Description: "API Gateway endpoint URL for Prod stage for Hello World function"
    Value: !Sub "https://${ServerlessRestApi}.execute-api.${AWS::Region}.amazonaws.com/Prod/hello/"
  HelloWorldFunction:
    Description: "Hello World Lambda Function ARN"
    Value: !GetAtt HelloWorldFunction.Arn
  HelloWorldFunctionIamRole:
    Description: "Implicit IAM Role created for Hello World function"
    Value: !GetAtt HelloWorldFunctionRole.Arn

我想收集变量“分数”的值,以便了解人们通常如何进行测验。

1 个答案:

答案 0 :(得分:0)

要做类似的事情,您需要做两件事,一种将数据获取到某种形式的存储的方法,以及存储本身。

除非发生了某些变化,否则github.io网站仅是静态内容,因此,没有后台运行的服务器可以从中访问存储并与之通信,只有静态内容由github.io服务提供,并且在用户的浏览器中运行。

所以基本答案是你不能。但这不是真的,而且如果您愿意采取粗鲁的做法,总会遇到麻烦。 (我想这只是为了好玩吗?)

在这种情况下,您可以在家中的计算机上运行服务器或其他方式。然后,当用户回答问题时,您便向家里的计算机上的服务器添加了一个呼叫,它将获取该数据并保存并根据需要进行汇总。

如果您想对此感到很奇怪,可以找到某种向您发送电子邮件的js软件包。唯一需要注意的是,您将需要包含电子邮件地址的凭据,该凭据将被发送给页面的每个用户(因此,您将密码和电子邮件提供给互联网上的任何人)。您可以使用试用版Azure帐户执行类似的操作,在该处使用存储,但同样会遇到信用问题,因此您肯定会受到一些欺骗的困扰。

但是,如果想存储有关用户的信息,那么一天结束时,您可能会想要拥有一个动态网站。

尽管,如果您确定的话,也许可以看一下:https://medium.com/pan-labs/dynamic-web-apps-on-github-pages-for-free-ffac2b776d45-类似于“将数据发送到您自己的计算机”步骤,但是使用了免费的firebase层。