Flask 禁止缓存


@app.after_request
def add_header(r):
    r.headers["Cache-Control"] = "no-cache, no-store, must-revalidate"
    r.headers["Pragma"] = "no-cache"
    r.headers["Expires"] = "0"
    r.headers['Cache-Control'] = "public, max-age=0"
    return r

after_request(f)

Register a function to be run after each request.

Your function must take one parameter, an instance of response_class and return a new response object or the same (see process_response()).

As of Flask 0.7 this function might not be executed at the end of the request in case an unhandled exception occurred.

VR 视频类型

平面 2D

  • 手机观看方式:裸眼观看

  • Glass观看方式:双目,原画面复制(巨幕2D)

Alt none

平面 3D

左右

  • 手机观看方式:无

  • Glass 观看方式:双目,巨幕3D,真3D

Alt none

上下

  • 手机观看方式:无

  • Glass 观看方式:双目,巨幕3D,真3D

Alt none

360度2D

ERP

  • 手机观看方式:单目,Touch(滑动) 或 Motion(陀螺仪)方式

  • Glass 观看方式:双目,Motion方式

Alt none

Cubemap

  • 手机观看方式:单目,Touch或Motion方式

  • Glass 观看方式:双目,Motion方式

Alt none

Alt none

FishEye

  • 手机观看方式:单目,Touch或Motion方式

  • Glass 观看方式:双目,Motion方式

Alt none

360度3D

ERP

上下

  • 手机观看方式:无

  • Glass 观看方式:双目,Motion方式

Alt none

180度2D

半球

  • 手机观看方式:单目,Touch或Motion方式

  • Glass 观看方式:双目,Motion方式

Alt none

FishEye

  • 手机观看方式:无

  • Glass 观看方式:双目,Motion方式

Alt none

180度3D

半球

上下

  • 手机观看方式:无

  • Glass 观看方式:双目,Motion方式

Alt none

左右

  • 手机观看方式:无

  • Glass 观看方式:双目,Motion方式

Alt none

FishEye

NULL

MacOS Catalina 编译 FFMPEG

--extra-cflags=-fno-stack-check

Android N 禁止 StatusBar 下拉

frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBarView.java

   @Override
    public boolean onTouchEvent(MotionEvent event) {
        boolean barConsumedEvent = mBar.interceptTouchEvent(event);

        if (DEBUG_GESTURES) {
            if (event.getActionMasked() != MotionEvent.ACTION_MOVE) {
                EventLog.writeEvent(EventLogTags.SYSUI_PANELBAR_TOUCH,
                        event.getActionMasked(), (int) event.getX(), (int) event.getY(),
                        barConsumedEvent ? 1 : 0);
            }
        }

        /* bengin */
        //return barConsumedEvent || super.onTouchEvent(event);
        return false;
        /* end */
    }

frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java

        if (MULTIUSER_DEBUG) {
            mNotificationPanelDebugText = (TextView) mNotificationPanel.findViewById(
                    R.id.header_debug_info);
            mNotificationPanelDebugText.setVisibility(View.VISIBLE);
        }

        try {
            boolean showNav = mWindowManagerService.hasNavigationBar();
            if (DEBUG) Log.v(TAG, "hasNavigationBar=" + showNav);
            if (showNav) {
                /* Begin */
                //createNavigationBar();
                /* End */
            }
        } catch (RemoteException ex) {
            // no window manager? good luck with that
        }

        changeBarHideStatus();

禁止 oh-my-zsh 自动转义特殊字符

找到 oh-my-zsh 的配置文件夹,一般路径在 ~/.oh-my-zsh/lib/misc.zsh,打开,注释掉 if语句中的内容:

# *-magic is known buggy in some versions; disable if so
#if [[ $DISABLE_MAGIC_FUNCTIONS != true ]]; then
# for d in $fpath; do
#   if [[ -e "$d/url-quote-magic" ]]; then
#       if is-at-least 5.1; then
#           autoload -Uz bracketed-paste-magic
#           zle -N bracketed-paste bracketed-paste-magic
#       fi
#       autoload -Uz url-quote-magic
#       zle -N self-insert url-quote-magic
#      break
#   fi
#  done
#fi