문제

나는 웹 서버의 슬림 다운 버전을 실행하는 임베디드 장치를 가지고있다.현재 정적 페이지를 표시 할 수 있습니다.다음은 정적 페이지를 표시하는 방법의 예입니다:

   char *text="HTTP/1.0 200 OK\r\nContent-Type: text/html\r\n\r\n"
          "<html><body>Hello World!</body></html>";
   IPWrite(socket, (uint8*)text, (int)strlen(text));
   IPClose(socket);

내가하고 싶은 것은 동적 콘텐츠를 표시하는 것입니다.센서에서 읽기.내가 금까 생각는 로 매 번 새로 고는 것니다

<meta http-equiv="refresh" content="600">

그리고()를 사용하여 센서 판독값을 본문 응답에 대한 변수.

페이지를 지속적으로 새로 고치지 않고도 이 작업을 수행할 수 있는 방법이 있습니까?

도움이 되었습니까?

해결책

다음(내 경험에서)접근 방식을 시도 할 수 있습니다:-정적 및 동적 콘텐츠를 나누고 동적 콘텐츠를 최소화합니다.

  • 의사 인터페이스를 만듭니다.2018 년 당신의 _베딩된 _사이트/센서.2015 년 다음 응답의 생성에 바인딩되어야 합니다:

sprintf(cgi_str, "HTTP/1.0 200 OK\r\nContent-Type: text\r\nContent-Length: %d\r\n\r\nvalue=%02d", 8, sensor_value);

또는(그것은 당신의 디자인 고려 사항에 관한 것입니다):

sprintf(cgi_str, "HTTP/1.0 200 OK\r\nContent-Type: text\r\nContent-Length: %d\r\n\r\n%02d", 2, sensor_value);

  • 간단한 자바 스크립트 또는 작은 자바 애플릿을 사용하여 주기적으로 요청하십시오 당신의 _베딩된 _사이트/센서.2015 년.자바스크립트는 일반적으로 브라우저에 의존하고 꺼질 수 있습니다.자바 애플릿은 또한 추가적인 정적 콘텐츠가 필요합니다.하지만 데이터를 제시하고 간단한 읽기를 확장하고 더 많은 기능을 보여주는 특별한 자유가 있습니다.

이 대신 전체 페이지를 다시로드의 매우 효율적인 방법으로 통신을 구성 할 수 있습니다:코드의 일부-사용자 프런트 엔드-는 브라우저에서 실행되고 다른 부분-백 엔드-는 임베디드 장치에서 실행됩니다.

다른 팁

제발 아니 이를 제공하기 위해 자바 애플릿을 사용합니다.

아약스와 자바 스크립트 클라이언트 측은 임베디드 애플릿의 불결함없이 이런 종류의 일을 쉽게 만듭니다.

"불결함"은:

  • 자바 보안 문제
  • 자바 런타임 불일치
  • 페이로드 크기 증가(애플릿은 자바스크립트 코드 조각에 비해 큼)
  • 속도 문제(애플릿 시작 속도가 느릴 수 있음)
  • 웹 페이지는 유지하기가 더 어렵습니다.
  • 그리고 그 다음으로

요약하자면:그것은 2013 년,그냥 자바 스크립트와 아약스를 사용합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top