小编Lau*_*en 的帖子

使用SSL部署Daphne + NGINX的Django频道

我有一个nginx的工作配置代理到django通道的上游daphne服务器.但是,当我将我的站点移动到ssl时,我开始遇到与websocket请求有关的403错误.这是我的错误日志:

None - - [24/Apr/2017:02:43:36] "WSCONNECTING /pulse_events" - -
None - - [24/Apr/2017:02:43:36] "WSREJECT /pulse_events" - -
2017/04/24 02:43:37 [info] 465#465: *10 client 69.203.115.135 closed keepalive 
connection
Run Code Online (Sandbox Code Playgroud)

并从访问日志:

- - [24/Apr/2017:02:48:54 +0000] "GET /pulse_events HTTP/1.1" 403 5 "-" "-"
- - [24/Apr/2017:02:49:03 +0000] "GET /pulse_state/ HTTP/2.0" 200 1376 "-" "Pulse/1 CFNetwork/811.4.18 Darwin/16.1.0"
Run Code Online (Sandbox Code Playgroud)

我的nginx配置如下:

upstream pulse_web_server {
    server unix:/home/pulseweb/run/gunicorn.sock fail_timeout=0;
}

upstream pulse_web_sockets {
   server unix:/home/pulseweb/run/daphne.sock;
}

map $http_upgrade $connection_upgrade {
     default upgrade;
     '' close;
}

server {
    listen 80;
    server_name …
Run Code Online (Sandbox Code Playgroud)

python django ssl nginx daphne

7
推荐指数
1
解决办法
2046
查看次数

SwiftUI - 当加载视图后更新属性时,不会调用 onReceive 来更改 ObservableObject 属性

我有一个视图,它在滚动视图中显示从 API 加载的一些照片。我想推迟获取图像直到显示视图。我的观点,简化后看起来像这样:

struct DetailView : View {
    @ObservedObject var viewModel: DetailViewModel

    init(viewModel: DetailViewModel) {
        self.viewModel = viewModel
    }

    var body: some View {
        GeometryReader { geometry in
            ZStack {
                Color("peachLight").edgesIgnoringSafeArea(.all)
                if self.viewModel.errorMessage != nil {
                    ErrorView(error: self.viewModel.errorMessage!)
                } else if self.viewModel.imageUrls.count == 0 {
                    VStack {
                        Text("Loading").foregroundColor(Color("blueDark"))
                        Text("\(self.viewModel.imageUrls.count)").foregroundColor(Color("blueDark"))
                    }
                } else {
                    VStack {
                        UIScrollViewWrapper {
                            HStack {
                                ForEach(self.viewModel.imageUrls, id: \.self) { imageUrl in
                                    LoadableImage(url: imageUrl)
                                        .scaledToFill()
                                }.frame(width: geometry.size.width, height: self.scrollViewHeight)
                            }.edgesIgnoringSafeArea(.all)
                        }.frame(width: geometry.size.width, height: self.scrollViewHeight)
                        Spacer()
                    }
                } …
Run Code Online (Sandbox Code Playgroud)

swiftui combine observableobject

2
推荐指数
1
解决办法
2412
查看次数

标签 统计

combine ×1

daphne ×1

django ×1

nginx ×1

observableobject ×1

python ×1

ssl ×1

swiftui ×1