我正在使用phil sturgeon REST_Controller为codeigniter创建一个REST api,到目前为止我已经能够创建一个简单的库来为用户生成api密钥.我的问题是现在为每个请求发送api密钥到API,如何在不必为每个请求手动发送它的情况下执行此操作.
我正在使用PHP Letter的ajax文件上传插件,并使用jQuery 1.6.2.文件正确上传,但我无法使用从php脚本返回的JSON数据,当我检查javascript错误时,我遇到了这个错误,
"未捕获的TypeError:对象函数(a,b){return new e.fn.init(a,b,h)}没有方法'handleError'"
在铬和
"jQuery.handleError不是函数"
在Firefox中.
有没有人有类似的经历?
我有一个使用html5验证电子邮件和必填字段的表单.表格将通过ajax提交.在允许表单通过ajax提交之前,如何确定表单是否通过了验证.
这是我的HTML:
<form action="" method="post" id="comment_form">
<input type="hidden" name="post_id" value="<?=$post->ID ?>" />
<label for="name">Name</label>
<input type="text" name="name" required="required">
<label for="email">Email Address</label>
<input type="email" name="email" required="required">
<label for="comment">Comment</label>
<textarea name="comment" required="required" >
</textarea>
<label for="submit"></label>
<button type="submit"class="button green meduim" id="comment_btn">Submit</button>
</form>
Run Code Online (Sandbox Code Playgroud)
这是我的jquery
$("#comment_btn").click(function(e){
//the request url
var url = site_url+'comments/post_comment';
//cross site request forgery token
var xtoken = $("input[name='xtoken']").val();
//post data
var dataObj = {
"name":$('#name').val(),
"email":$("#email").val(),
"comment":$("#comment").val(),
"post_id":$("input[name='post_id']").val(),
"xtoken":xtoken
};
//dim form
$('#comment_form').addClass('dim');
//make request
$.ajax({
url:url,
type:'POST',
data:dataObj,
dataType:'json', …Run Code Online (Sandbox Code Playgroud) 我有一个骨架集合,在表格中呈现.我想基于集合具有的某些属性使表可排序,例如"task_status","task_group".我正在阅读有关collection.comparator,nd collection.sort的主干文档.我怎么能这样做?
我正在使用RESTful控制器属性使用laravel构建RESTful api.到目前为止,我已经能够完成大部分工作.现在的问题是验证,我试图使用"user_id"和"签名"来使用亚马逊方法.我使用php的'hash_hmac()'创建签名.
这是一个api控制器示例
class Api_Tasks_Controller extends Api_Controller {
public $restful = true;
public function get_index($id = null) {
$this->verfiy_request();
if(!is_null($id))
{
return Response::json(array("tasks"=>"just one"),200);
}
else
{
return Response::json(array("tasks"=>"everthing"),200);
}
}
}
Run Code Online (Sandbox Code Playgroud)
这就是api控制器类
class Api_Controller extends Controller {
public function verify_request() {
//user id
$user_id = (int) Input::get('user_id');
//signature
$sig = Input::get('sig');
//Lookup user
$user = Sentry::user($user_id);
if($user) {
//user email
$email = $user->email;
//user api key
$api_key = $user->metadata['api_key'];
//recreate signature
$_sig = hash_hmac("sha256",$email.$user_id,$api_key);
if($_sig === $sig) {
return …Run Code Online (Sandbox Code Playgroud) 我在一个项目中使用了很多jQuery.
我有一个javascript函数,它向一个以JSON返回数据的控制器发出ajax请求.
我想显示一条用户友好的消息,通知用户他/她还没有存储信息.但我对如何在JSON中发送响应感到困惑,因此我的javascript函数可以确定用户是否有要显示的信息.
这是我的javascript函数:
function latest_pheeds() {
var action = url+"pheeds/latest_pheeds";
$('#pheed-stream').html('<div class="loading"></div>');
$('.loading').append('<img src="'+pheed_loader_src+'" />');
$.ajax({
url:action,
type:'GET',
dataType:'json',
error: function () {
},
success:function(data) {
$('.loading').fadeOut('slow');
$.each(data,function(index,item) {
$('#pheed-stream').append
(
'<div class="pheed" id="'+item.pheed_id+'">'+
'<p><a class="user_trigger" href="users/info/'+item.user_id+'">'
+item.user_id+'</a></p>'+
'<p>'+item.pheed+'</p>'+
'<div class="pheed_meta">'+
'<span>'+item.datetime+' Ago</span>'+
'<span class="cm">'+item.comments+
'<img class="comment_trigger" src="/pheedbak/assets/img/comment.png" title="Click to comment on pheed" onclick="retrieve_comments('+item.pheed_id+')">'+
'</span>'+
'<span>'+item.repheeds+
' Repheeds'+
'<img class="repheed_trigger" src="/pheedbak/assets/img/communication.png" title="Click to repheed" onclick="repheed('+item.pheed_id+')">'+
'</span>'+
'<span>'+
'Favourite'+
'<img class="favourite_trigger" src="/pheedbak/assets/img/star.png" title="Click to make this a favourite" onclick="favourite_pheed('+item.pheed_id+')" />'+ …Run Code Online (Sandbox Code Playgroud) 我试图使用这个jQuery插件进行跨域图像上传jQuery.fileupload
我认为该插件使用require.js,我已经包含它,因为我使用它加载我的页面的JavaScript代码.该插件似乎并不要求我包含require.js,但是当我测试我的页面时,我得到了这个错误
未捕获的错误:不匹配的匿名define()模块:function($,undefined){ http://requirejs.org/docs/errors.html#mismatch
有人可以指出我正确的方向
我正在使用phpleague的分形包.我有这样的转换类设置
class ConversationTransformer extends TransformerAbstract
{
public function transform (Conversation $conversation, $user)
{
return [];
}
}
Run Code Online (Sandbox Code Playgroud)
但是当我尝试访问它时,我得到了变换的参数2异常
$user = $this->people->get($this->user());
//conversations
$conversations = $this->conversations->user($user);
return $this->fractal->paginatedCollection($conversations, $user, new ConversationTransformer());
Run Code Online (Sandbox Code Playgroud) 我使用codeigniter 2.1.0为客户开发和电子商务网站.该网站已经运行了大约3个月,然后突然,登录没有坚持,会话数据没有设置.我检查了数据库,发现每次加载页面时都会创建一个新会话.
这是我的配置值
$config['sess_cookie_name'] = 'myu';
$config['sess_expiration'] = 7200;
$config['sess_expire_on_close'] = FALSE;
$config['sess_encrypt_cookie'] = FALSE;
$config['sess_use_database'] = TRUE;
$config['sess_table_name'] = '_sessions';
$config['sess_match_ip'] = TRUE;
$config['sess_match_useragent'] = TRUE;
$config['sess_time_to_update'] = 3600;
$config['cookie_prefix'] = "";
$config['cookie_domain'] = "";
$config['cookie_path'] = "/";
$config['cookie_secure'] = FALSE;
Run Code Online (Sandbox Code Playgroud)
我在会话表上编辑了user_agent字段以容纳long user_agent字符串.可能是什么问题呢?我会很乐意提供任何帮助
我尝试使用 CordinatorLayout 和 CollapsingToolbarLayout、TabLayout 和 ViewPager 创建类似于图像中的布局。我的布局无法正确呈现。
这是我的布局
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true">
<android.support.design.widget.AppBarLayout
android:id="@+id/app_bar_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/colorPrimary"
android:fitsSystemWindows="true">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_scrollFlags="scroll|exitUntilCollapsed"
app:contentScrim="?attr/colorPrimary"
app:expandedTitleMarginStart="48dp"
app:expandedTitleMarginEnd="64dp"
android:fitsSystemWindows="true">
<ImageView
android:id="@+id/image"
android:src="@drawable/thumb_placeholder"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop"
android:fitsSystemWindows="true"
app:layout_collapseMode="parallax"/>
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:layout_collapseMode="pin" />
<android.support.design.widget.TabLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/movie_tabs"
app:tabGravity="fill"
app:tabMode="fixed"
android:background="@color/colorPrimary"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:tabTextColor="@color/textColorPrimary"
app:tabSelectedTextColor="@color/textColorPrimary"
app:tabIndicatorColor="@color/textColorPrimary"
app:tabIndicatorHeight="4dp"
app:paddingStart="20dp"
app:paddingEnd="20dp">
</android.support.design.widget.TabLayout>
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<android.support.v4.view.ViewPager
android:id="@+id/movieviewpager"
android:layout_width="match_parent"
android:layout_height="match_parent">
</android.support.v4.view.ViewPager>
</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)
如果有内容,ViewPager Fragment 会覆盖 TabLayout,当没有内容时,将 TabLayout 显示在 ImageView 之上。我做错了什么,我还是个 …
php ×6
jquery ×4
rest ×3
codeigniter ×2
javascript ×2
ajax ×1
android ×1
api ×1
api-key ×1
backbone.js ×1
cross-domain ×1
file-upload ×1
forms ×1
html5 ×1
json ×1
laravel ×1