我已经看到了codeigniter的网页缓存功能,它对于实现最高性能非常有用。
我按照此link中的描述应用了此功能,但它运行正常。
但在我的系统中,某些功能根据用户角色启用/禁用。谁能帮助我如何使用缓存功能用户角色基础?
应用此功能后,我已使用admin用户和普通用户进行了测试。缓存普通用户的原因查看所有管理功能链接。
用户注销时有没有办法删除缓存?
答案 0 :(得分:0)
您可以使用每个控制器末端的下方功能删除缓存
private void showAddImageDialog() {
FragmentManager fm = getActivity().getSupportFragmentManager();
AddPictureDialogFragment addPictureDialogFragment = new AddPictureDialogFragment();
addPictureDialogFragment.setTargetFragment(this, REQUEST_CAMERA);
addPictureDialogFragment.show(fm, getTag());
}
public static class AddPictureDialogFragment extends DialogFragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_add_picture_dialog, container, false);
getDialog().setTitle("New Picture");
Button openCameraButton = (Button) rootView.findViewById(R.id.open_camera_button);
openCameraButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.d("","Open Camera Option Selected");
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
getTargetFragment().startActivityForResult(intent, getTargetRequestCode());
getDialog().dismiss();
}
});
Button openGalleryButton = (Button) rootView.findViewById(R.id.open_gallery_button);
openGalleryButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.d("","Open Gallery Option Selected");
Intent intent = new Intent(Intent.ACTION_PICK,android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
intent.setType("image/*");
getTargetFragment().startActivityForResult(Intent.createChooser(intent, "Select File"), SELECT_FILE);
getDialog().dismiss();
}
});
return rootView;
}
}
答案 1 :(得分:0)
您可以使用localstorage来获取所有页面中的数据......
For EX: localStorage.user_role = "SubAdmin";
你可以使用javascript
获取它alert(localStorage.user_role);
但它不喜欢在localStorage或缓存中存储任何数据...... 但是因为这是你的要求......使用上面的例子作为参考,我希望它可以帮助你。
localStorage的一个优点是...... 清除缓存对HTML5 localStorage或sessionStorage没有影响(但清除cookie会起作用!)