首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用REST将表单数据从离子型应用程序发送到parse.com MBaaS

如何使用REST将表单数据从离子型应用程序发送到parse.com MBaaS
EN

Stack Overflow用户
提问于 2014-11-23 19:59:44
回答 1查看 1.2K关注 0票数 1

我对离子/角度非常陌生(从今天开始就是出于必要),

在教程和文档的帮助下,

我一直在创建一个向Parse.com MBaaS服务提交数据的演示/测试应用程序。

但是有些地方出了问题,对如何添加这三个表单字段一无所知。

详细信息:应用程序名是TestApp类/表名是数据

有三个列,fname、lname和uname (用于姓氏和用户名)。

这是我一直遵循的代码。任何帮助都是非常感激的。

index.html

代码语言:javascript
复制
    <!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width">
    <title></title>

    <link href="lib/ionic/css/ionic.css" rel="stylesheet">
    <link href="css/style.css" rel="stylesheet">

    <!-- IF using Sass (run gulp sass first), then uncomment below and remove the CSS includes above
    <link href="css/ionic.app.css" rel="stylesheet">
    -->

    <!-- ionic/angularjs js -->
    <script src="lib/ionic/js/ionic.bundle.js"></script>

    <!-- cordova script (this will be a 404 during development) -->
    <script src="cordova.js"></script>

    <!-- your app's js -->
    <script src="js/app.js"></script>
  </head>
  <body ng-app="starter">



<div>
    <div>
        <ion-nav-bar class="bar-stable">
            <ion-nav-back-button class="button-icon icon ion-ios7-arrow-back">Back</ion-nav-back-button>
        </ion-nav-bar>
        <ion-nav-view></ion-nav-view>
    </div>
</div>

    <!-- Center content -->
   <ion-view title="Add Data">
    <ion-content padding="true" scroll="false" class="has-header">
        <div class="spacer" style="height: 100px;"></div>
        <form ng-controller="defaultCtrl">
            <ion-list>
                <label class="item item-input">
                    <span class="input-label">First Name</span>
                    <input type="text" placeholder="First Name here" name="fname" ng-model="starter.fname">
                </label>
                <label class="item item-input">
                    <span class="input-label">Last Name</span>
                    <input type="text" placeholder="Surname Here" name="lname" ng-model="starter.lname">
                </label>
                <label class="item item-input">
                    <span class="input-label">Username</span>
                    <input type="text" placeholder="Username here" name="uname" ng-model="starter.uname">
                </label>
            </ion-list>
            <button class="button button-calm button-block" type='submit' ng-click="create(starter)">Add data</button>
        </form>
    </ion-content>
</ion-view>




<script type="text/javascript">


angular.module('starter',['ionic']).factory('starter',['$http','PARSE_CREDENTIALS',function($http,PARSE_CREDENTIALS){
    return {
        create:function(data){
            return $http.post('https://api.parse.com/1/classes/data',data,{
                headers:{
                    'X-Parse-Application-Id': PARSE_CREDENTIALS.APP_ID,
                    'X-Parse-REST-API-Key':PARSE_CREDENTIALS.REST_API_KEY,
                    'Content-Type':'application/json'
                }
            });
        }
    }
}]).value('PARSE_CREDENTIALS',{
    APP_ID: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
    REST_API_KEY:'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
});


angular.module('starter', ['ionic'])
.controller("defaultCtrl", function ($scope) {
$scope.starter = {};
 $scope.create=function(){
        starter.create({fname:$scope.starter.fname}).success(function(data){

        });




});

</script>


  </body>
</html>
EN

回答 1

Stack Overflow用户

发布于 2015-09-28 13:57:07

设置身份验证标头

代码语言:javascript
复制
PARSE_HEADER_CREDENTIALS = {
    "x-parse-application-id": "PARSE-APPLICATION-ID",
    "x-parse-rest-api-key": "PARSE-REST-API-KEY"
};

代码

代码语言:javascript
复制
addObject: function (_params) {

    // for POST, we only need to set the authentication header
    var settings = {
        headers: PARSE_HEADER_CREDENTIALS,
    };
    // for POST, we need to specify data to add, AND convert it to 
    // a string before passing it in as seperate parameter data
    var dataObject = {
        "name": _params.name,
        "room": _params.room,
    };

    var dataObjectString = JSON.stringify(dataObject);

    // $http returns a promise, which has a then function
    return $http.post(baseURL + 'classes/stuff', dataObjectString, settings)
        .then(function (response) {
            // In the response resp.data contains the result
            // check the console to see all of the data returned
            console.log('addObject', response);
            return response.data;
        });
},

在此处发布的完整示例:https://github.com/aaronksaunders/info-rest-api-ionic-sample

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27093627

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档